统计手机流量

软件流量使用数据保存在 /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下载的总流量  
  

你可能感兴趣的:(网络,数据)