如何了解每天的互联网总数据使用情况?
例如,在一天结束的时候,我使用了800mb,那么它应该像2015年5月20日的#400;"互联网使用量800mb一样回归"。
那么如何检测总数据使用情况呢?
经过大量的谷歌搜索后,我只能在发送和接收字节中找到数据使用情况,但不会在总使用情况中找到。
并且还希望将用法分为wifi和移动数据。
答案 0 :(得分:5)
看一下TrafficStats课程。为此,您需要专门查看getTotalRxBytes(),getTotalTxBytes(),getMobileRxBytes()和getMobileTxBytes()。
快速概述:
getTotalRxBytes = total downloaded bytes
getTotalTxBytes = total uploaded bytes
getMobileRxBytes = only mobile downloaded bytes
getMobileTxBytes = only mobile uploaded bytes
因此,为了获得与WiFi相关的流量的数量,您只需要获得总数,然后减去移动设备,就这样:
getTotalRxBytes - getMobileRxBytes = only WiFi downloaded bytes
getTotalTxBytes - getMobileTxBytes = only WiFi uploaded bytes
使用字节数,我们可以切换到不同的单位,例如兆字节(MB):
getTotalRxBytes / 1048576 = total downloaded megabytes
至于获取间隔的使用情况,例如一天,因为这些方法只提供总数(自启动以来),您需要跟踪起始编号,然后减去以获得在一个时间段内使用的字节数。间隔。因此,在一天开始时,例如凌晨12:00:00,您可以跟踪总使用情况:
startOfDay = getTotalRxBytes + getTotalTxBytes;
当一天结束时,例如晚上11:59:59,您可以减去这两个数字并获得当天的总使用量:
endOfDay = getTotalRxBytes + getTotalTxBytes;
usageForDay = endOfDay - startOfDay;
总结: