[Android Traffic] android 流量计算方法
android流量简介
- 流量统计文件:路径/proc/net/dev
打开文件,其中 lo 为本地流量, rmnet0 为3g/2g流量, wlan0 为无线流量.
- 在/sys/class/net/下 可以找到相关类别(如rmnet0)的目录.在其子目录statistics下游rx_bytes和tx_bytes记录收发流量.
- 在/proc/uid_stat/{uid}/tcp_rcv记录该uid应用下载流量字节,/proc/uid_stat/{uid}/tcp_snd有该uid应用上传流量字节
TrafficStats学习
- TrafficStats google develop文档
- TrafficStats 源文件 查看
- 重要API:
static long getMobileRxBytes() //获取通过Mobile连接收到的字节总数,不包含WiFi
static long getMobileRxPackets() //获取Mobile连接收到的数据包总数
static long getMobileTxBytes() //Mobile发送的总字节数
static long getMobileTxPackets() //Mobile发送的总数据包数
static long getTotalRxBytes() //获取总的接受字节数,包含Mobile和WiFi等
static long getTotalRxPackets() //总的接受数据包数,包含Mobile和WiFi等
static long getTotalTxBytes() //总的发送字节数,包含Mobile和WiFi等
static long getTotalTxPackets() //发送的总数据包数,包含Mobile和WiFi等
static long getUidRxBytes(int uid) //获取某个网络UID的接受字节数
static long getUidTxBytes(int uid) //获取某个网络UID的发送字节数[/mw_shl_code]
备注:TrafficStats类在Android 2.2 API Level(8)之后出现。
做GXB的时候查流量的方法是根据uid查询系统文件:
/proc/uid_stat/uid/tcp_send 上传流量
/proc/uid_stat/uid/tcp_rcv 下载流量
做AVT的时候是通过uid调用系统的方法查询流量:
//proc/uid_stat/10086
long tx = TrafficStats.getUidTxBytes(uid);//发送的 上传的流量byte
long rx = TrafficStats.getUidRxBytes(uid);//下载的流量 byte
TrafficStats.getMobileTxBytes();//获取手机3g/2g网络上传的总流量
TrafficStats.getMobileRxBytes();//手机2g/3g下载的总流量
TrafficStats.getTotalTxBytes();//手机全部网络接口 包括wifi,3g、2g上传的总流量
TrafficStats.getTotalRxBytes();//手机全部网络接口 包括wifi,3g、2g下载的总流量
本质都是一样的。
相关文章
- android onresume方法,非静态方法’onResume’Android Studio
- android 浏览器 开发,Android 浏览器的开发实例分享
- android签名命令行,Android系统签名位置及命令
- Android studio安装教程(2020/11/20最新版本的安装)[通俗易懂]
- android开发笔记之 Android代码混淆打包
- android onresume方法,Android onActivityResult()和onResume()的执行顺序
- android短信验证码方案,Android之短信验证码
- Android Binder框架实现之bindService详解「建议收藏」
- Android angle_android 界面悬停
- android触摸屏事件,Android Touch事件分析
- android登录注册跳转的代码_Android开发代码
- android activitymanager 系统api_Android view
- eclipse中android开发_Android开发教程
- Android 列表视频
- React Native学习笔记(一)—— Win11安卓子系统的安装与使用 - Windows Subsystem for Android - WSA
- 【Android NDK 开发】NDK C/C++ 代码崩溃调试 - Tombstone 报错信息日志文件分析 ( 获取 tombstone_0X 崩溃日志信息 )
- 【Android 热修复】热修复原理 ( 多 Dex 打包机制 | 多 Dex 支持 | Dex 分包设置 | 开发和产品风格设置 | 源码资源 )
- 【错误记录】Android Studio 编译报错 ( Could not find com.android.tools.build:gradle:4.2.1. )
- 【Android Gradle 插件】Module 目录下 build.gradle 配置文件 ( android 闭包块配置 | AppExtension 扩展类型参考文档 )
- Android View架构总结详解手机开发
- 最新鲜最详细的Android SDK下载安装及配置教程详解手机开发
- Wine 3.0发布:支持Android图形驱动、Direct3D 11、AES加密
- Android中实现多Tab页应用
- Android控件系列之Button以及Android监听器使用介绍
- Android中代码运行指定Apk的简单方法
- android错误aapt.exe已停止工作的解决方法