TrafficStats.getUidRxBytes(uid)
获取应用的流量。但是,我不知道哪个UID是WiFi热点(这是一个系统应用程序)。
AID_WIFI
的UID为1010
,因此我在打开WiFi热点并连接另一部手机连接时尝试TrafficStats.getUidRxBytes(1010)
(并搜索从互联网上检索一些图片) ),但它只返回-1
。
如果我跑:
int uid = 1010;
long rx = TrafficStats.getUidRxBytes(uid);
sb.append("接受mobile:" + rx);
long tx = TrafficStats.getUidTxBytes(uid);
sb.append("发送mobile:" + rx);
long rx1 = TrafficStats.getUidRxPackets(uid);
sb.append("接受wifi:" + rx1);
long tx1 = TrafficStats.getUidTxPackets(uid);
sb.append("发送wifi:" + tx1);
Log.e("test111",sb.toString());
控制台日志输出为:
接受mobile:-1
发送mobile:-1
接受wifi:-1
发送wifi:-1