【Android】性能测试之获取Android流量数据

 

流量:

android4.0以上版本可以用/proc/uid_stat/$uid/tcp_rcv和/proc/uid_stat/$uid/tcp_snd来获取某个程序的上下行流量;而4.0以下版本要用cat/proc/$pid/net/dev来查看上下行流量。uid和pid的关系,可以从/data/system/packages.list这个文件中获取,但是/proc/uid_stat/$uid这种方式,在Android 6.0系统中部分厂商可能是做了某些修改,在proc目录下没有显示uid_stat文件夹。

获取Android(Linux)流量信息:

在Linux系统有3个地方保存流量统计文件,对于Android系统同样也适用:

(1)在/proc/net/dev下可以查看各个网络接口的收发流量  (等同adb shell cat /proc/pid/net/devadbshell cat /sys/class/net/wlan0/statistics/rx_bytes);

(2)在/sys/class/net/下可以找到相关类别(如wlan0)的目录.在其子目录statistics下游rxbytes和txbytes记录收发流量;

(3)在/proc/uid_stat/{uid}/tcp_rcv记录该uid应用下载流量字节,/proc/uid_stat/{uid}/tcp_snd有该uid应用上传流量字节;

介绍5个地方统计的流量异同点如下:

【Android】性能测试之获取Android流量数据_第1张图片

推荐使用顺序:D > E > C > A> B

推荐DE(其他的方法自己可以根据提示的adb命令进行练习)

【Android】性能测试之获取Android流量数据_第2张图片【Android】性能测试之获取Android流量数据_第3张图片


(备注:本来有截图的,但是复制过来就没有了,随后有空闲时间再上传好了,多担待;自动化数据收集脚本已经写好,感兴趣的可以交流交流)

这个文本编辑器他不好用,复制过来的格式有问题,所以直接放截图了

 

你可能感兴趣的:(Android,AutoTesting)