软件流量使用数据保存在 /proc/uid_stat/uid(用户id)/ 下面文件中
/proc/uid_stat/uid/tcp_send 上传流量
/proc/uid_stat/uid/tcp_rcv 下载流量
代码如下
//1.获取一个包管理器。
PackageManager pm = getPackageManager();
//2.遍历手机操作系统 获取所有的应用程序的用户ID(uid )
List<ApplicationInfo> appliactaionInfos = pm.getInstalledApplications(0);
for(ApplicationInfo applicationInfo : appliactaionInfos){
int uid = applicationInfo.uid; // 获得应用用户ID(uid
)
//proc/uid_stat/10086
//发送的 上传的流量byte
long tx = TrafficStats.getUidTxBytes(uid);
//下载的流量 byte
long rx = TrafficStats.getUidRxBytes(uid);
//方法返回值 -1 代表的是应用程序没有产生流量 或者操作系统不支持流量统计
}
TrafficStats.getTotalTxBytes();//手机全部网络接口 包括wifi,3g、2g上传的总流量
TrafficStats.getTotalRxBytes();//手机全部网络接口 包括wifi,3g、2g下载的总流量
TrafficStats.getMobileTxBytes();//获取手机3g/2g网络上传的总流量
TrafficStats.getMobileRxBytes();//手机2g/3g下载的总流量
|
原文地址:http://blog.csdn.net/kun5069073/article/details/45013801