android中每个应用程序都会产生流量,这个流量其实就在手机的一个文件夹中存储,我们要想获得其实就是找到这个文件夹,然后读取其中的数据就好了
流量分为上传的流量和下载的流量
上传的流量存储在:”/proc/uid_stat/”+uid+”/tcp_rcv”
下载的流量存储在:”/proc/uid_stat/”+uid+”/tcp_snd”
uid 是什么呢?
其实每个安装到手机上的应用程序都唯一对应一个uid
如何获取到uid 呢?
关键代码
PackageManager pm = getPackageManager();//获取包的管理器
List<PackageInfo> packInfos = pm.getInstalledPackages(0);// 所有的安装在系统上的应用程序包信息
for (PackageInfo packageInfo : packInfos) {
// 遍历所有的包信息
int uid = packageInfo.applicationInfo.uid;// 拿到应用程序的uid
String packName = packageInfo.packageName;