Android以编程方式获取特定应用程序的数据使用情况,例如:“ Facebook”上使用的数据使用情况

Wer*_*gil 4 java android network-traffic

我想按以下方式对数据使用量进行分类:

OS ------60% (300MB used so far)
Music ------ 10% (50MB used so far)
Facebook -----5% (25MB used so far)
Run Code Online (Sandbox Code Playgroud)

作为Android开发的初学者,任何人都可以帮助我解决此Android编程问题,并且希望当前开发一个移动网络监视器应用程序。我想通过指定应用程序名称来获取数据使用情况。

谢谢。希望听到大家的声音。

rup*_*ain 5

使用http://developer.android.com/reference/android/net/TrafficStats.html#getUidRxBytes(int)

公共静态长getUidRxBytes(int uid)

在API级别8中添加。返回自设备启动以来给定UID接收的字节数。对所有网络接口上的数据包进行计数,并且自设备启动以来总是单调增加。统计信息是在网络层进行测量的,因此它们包括TCP和UDP使用情况。

在JELLY_BEAN_MR2之前,这可能会在无法提供统计信息的设备上返回UNSUPPORTED。

另请参见myUid()uid

公共静态长getUidTxBytes(int uid)

在API级别8中添加。返回自设备启动以来给定UID传输的字节数。对所有网络接口上的数据包进行计数,并且自设备启动以来总是单调增加。统计信息是在网络层进行测量的,因此它们包括TCP和UDP使用情况。

在JELLY_BEAN_MR2之前,这可能会在无法提供统计信息的设备上返回UNSUPPORTED。

另请参见myUid()uid