流量统计"/>
Android 程序 2G/3G/4G 流量统计
Android从2.2版本起提供的 android.TrafficStats 有如下方法;
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的发送字节数
总接受流量TrafficStats.getTotalRxBytes(),
总发送流量TrafficStats.getTotalTxBytes());
不包含WIFI的手机GPRS接收量TrafficStats.getMobileRxBytes());
不包含Wifi的手机GPRS发送量TrafficStats.getMobileTxBytes());
某一个进程的总接收量TrafficStats.getUidRxBytes(Uid));
某一个进程的总发送量TrafficStats.getUidTxBytes(Uid));
上面的信息对很多人来说都是废话了,下面进入正题
Android程序中我们可以监听网络状态,
当网络切换为2G/3g/4G网络时 获取 进程A的总接收量X1,进程A的总发送量Y1,
当网络切换为wifi网络时 获取 进程A的总接收量X2,进程A的总发送量Y2,
如此可以得到该2G/3g/4G网络期间内 进程A的总接收量X=X2-X1,总发送量Y=Y2-Y1。
如此循环可以统计任意时间内 任意进程的2G/3g/4G网络流量。
更多推荐
Android 程序 2G/3G/4G 流量统计
发布评论