App流量测试--使用安卓自身提供的TCP收发长度统计功能
在Linux系统有3个地方保存流量统计文件,对于Android系统同样也适用:
(1)在/proc/net/dev下可以查看各个网络接口的收发流量 (等同adb shell cat /proc/pid/net/dev,adbshell 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个地方统计的流量异同点如下:
推荐使用顺序:D > E > C > A> B
推荐D和E(其他的方法自己可以根据提示的adb命令进行练习)
注意: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文件夹。
所测时间内的流量计算
发送流量:tcp_snd_new-tcp_snd_old=2032150-893233=1128917bytes
接收流量:tcp_rcv_new-tcp_rcv_old=18648825-1350829=17297996bytes
转载于:https://www.cnblogs.com/mgzc-1508873480/p/7953600.html
App流量测试--使用安卓自身提供的TCP收发长度统计功能相关推荐
- android真机流量测试,手机终端app流量测试
一.Android终端app流量测试 流量测试的原理:在安卓手机上,应用的网络流量数据都会保存在系统的/proc/uid_stat/$UID/tcp_rcv 和/proc/uid_stat/$UID/ ...
- APP——流量测试——adb命令简单测试
在不知道包名的情况下,在手机里先打开要测试的APP,执行如下命令:adb shell dumpsys window w |findstr \/ |findst ...
- app流量测试-Android自带统计功能
Android自带统计功能(统计流量总数值) adb shell cat proc/uid_stat/{UID}/tcp_snd和tcp_rcv UID是每个app安装时候分配的唯一编号用于识别该ap ...
- APP性能测试——流量测试(一)
写在前面: 第一期主要介绍如何通过anyproxy工具进行流量测试,二期介绍如何通过adb 命令实时监控wifi.4G下的上行以及下行流量值. app的流量测试是性能测 ...
- APP的流量测试(android和iOS的流量测试)
1.准备 性能测试工具-fiddler.电脑.Google浏览器.手机.无线(手机需要和电脑在一个网段里) 2.知识点 1)掌握fiddler工具安装(这个相对比较简单,大家百度进行安装即可) 也可以 ...
- APP性能测试--流量测试
一.流量测试基本概念 目前的网络类型包含2G\3G\4G\wifi,其中还有不同运营商的区分,我们在APP的使用中经常遇到大资源,重复请求,调用响应慢,调用失败等各种情况.在不同的网络类型之下,我们 ...
- APP测试内容 -- 流量测试常见测试方法
APP测试内容 -- 流量测试常见测试方法 大部分摘自:https://blog.csdn.net/baidu_21833433/article/details/63255182#commentBox ...
- APP性能测试——流量测试(二)
续上文:APP性能测试--流量测试(一),上篇文章介绍了如何通过代理工具抓网络请求,通过代理抓包我们可以抓到http和https请求的详细信息,由于代理我们需要连接wifi,很难抓取到4G网络下的流量 ...
- APP的CPU,内存,耗电,流量测试工具
APP的CPU,内存,耗电,流量测试工具下载地址,后续文章会介绍如何使用 Emmagee.itest.gt APP应用的CPU,内存,耗电,流量调查 可和同类产品比较,使用GT等工具:CPU靠syst ...
最新文章
- 最新的10个优质Python开源项目
- R语言ggplot2可视化:可视化分组的小提琴图(violin plot)并在分组小提琴内部嵌入箱图(box plot)
- ubuntu16.04 cuda9.0 cudnn Tensorflow GPU 1.10.0
- 当前流行的J2EE WEB应用架构分析
- 比尔.盖茨人生的四张面孔
- (转)PHP5使用cookie时报错 cannot modify header information - headers already sent by (......)
- ELASTIC的备份与恢复
- Linux中xml导入数据库,XML数据库 BaseX
- 高性能I/O设计模式
- 中如何拉取git代码_git使用教程4pycharm拉取git仓库项目代码
- sqlalchemy基本类型
- leetcode题库5-- 最长回文子串
- 强化学习 马尔可夫决策过程(MDP)是什么
- 版本管理工具Git记录
- nutch代码分析第一篇——综述
- 颠覆式编程:软件2.0
- UVA 473 Raucous Rockers
- TP6.0 一对一模型关联 hasOne
- Java正则表达式工具类(持续更新)
- SAP 系统图片修改以及 ABAP屏幕图片(大小调整)自适应设置
热门文章
- iOS interface适配
- Javascript UserAgent 获取平台及浏览器信息
- 《锋利的jQuery》要点归纳(五)jQuery与ajax的应用(上)
- C#面向对象名词比较
- Andriod下音频的相关操作
- Mr.J--学习五子棋的艰苦之路
- 2015-2016 XVI Open Cup, Grand Prix of Bashkortostan, SKB Kontur Cup Stage 2
- [c++基础] const char and static const char
- kotlin教程(1)
- Python攻克之路-高阶函数