流量统计原理
一、流量统计原理-查看/proc/uid_stat下的两个文件1、首先去/data/data目录下,ll,可以看到,u0_a92,表示10092 drwxr-x--x u0_a92 u0_a92 2013-11-03 13:05 com.taobao.taobao 2、/proc/uid_stat目录下,找到对应的id,然后进入 3、可以看到有文件:tcp_rcv和tcp_snd 4、一个tcp_rcv,这个表示接收的数据,即下载数据 一个tcp_snd,这个表示发送的数据,即上传数据 查看下载流量:cat tcp_rcv 查看上传流量:cat tcp_snd |
二、TrafficStats类-使用系统封装好的API来获取网络流量数据 使用类TrafficStats来获取网络数据传输:Class that provides network traffic statistics. // 使用类TrafficStats来获取网络数据传输:Class that provides network traffic statistics.
// long downBytes = TrafficStats.getMobileRxBytes();// 2G/3G:下载数据,byte
// long uploadBytes = TrafficStats.getMobileTxBytes();// 2G/3G:上传数据,byte
TrafficStats.getTotalRxBytes();// 所有的下载数据:wifi+2g/3g
TrafficStats.getTotalTxBytes();// 所有的上传数据:wifi+2g/3g
// TrafficStats.getUidRxBytes(uid);// 根据uid来获取某个应用的下载数据
// TrafficStats.getUidTxBytes(uid);// 根据uid来获取某个应用的上传数据
// TrafficStats.getUidTcpRxBytes(uid);//根据uid来获取某个应用的tcp下载数据,也可以获取udp
|
三、禁止应用程序访问网络: 需要root权限,通过修改访问的ip,将某个应用请求访问的目的网络的ip设置为不可到达,就可以达到禁止访问网络的目的。 参考命令:iptable droidwall 开源防火墙 |