Article / 2026/05/31

性能优化 (四十三) 精准获取流量消耗实战

性能优化 (四十三) 精准获取流量消耗实战 的技术笔记。

精准获取流量消耗实战

线上和线下流量获取

  • TrafficStats:API18以上重启以来的流量数据统计
  • getUidRxBytes(int uid)指定Uid的接受流量
  • getTotalTxBytes()总发送流量
  • 无法获取某个时间段内的流量消耗

线上流量获取

  • NetworkStatesManager:API23之后流量统计
  • 可获取指定时间间隔内的流量信息
  • 可获取不同网络类型下的消耗

前台后台流量获取

  • 难题:线上反馈App后台跑流量
  • 只获取一个时间段的值不够全面
  • 后台定时任务 获取间隔内流量 记录前后台 分别计算 上报APM后台 流量治理依据

如何判断App流量消耗偏高

  • 绝对值看不出高低
  • 对比竞品,相同Case对比流量消耗
  • 异常监控超过正常指标

测试方案

  • 设置----流量管理
  • 抓包工具:只允许本App联网
  • 可以解决大多数问题,但是线上场景线下可能遇不到

Giscus 未启用:请在 src/site.config.ts 中配置 repoId 与 categoryId。