如何测量我的应用程序的数据使用情况

4
我正在开发一个需要下载大量数据的Android应用程序。
为了提高可用性,我想测量应用程序产生的数据流量,并在应用程序下载特定数量的数据时向用户提示。
我的当前想法是将所有下载的字节相加,并在达到指定限制时做出反应。然而,由于我在许多不同的情况和代码位置中下载了东西,是否有其他可能测量每个应用程序的数据使用情况?
据我所知,sys/net/NETINTERFACE/statistics/rx_bytes报告整个系统的总量,因此这不是一个解决方案。
1个回答

14
然而,由于我在许多不同的情况和代码中的许多不同位置下载东西,是否有其他可能性来测量每个应用程序的数据使用情况呢?TrafficStats 可能可以按UID报告某些内容。 我说“可能”是因为它似乎与设备相关。 我怀疑Android 3.0+将始终按UID报告,但我的2.2和2.3经验有所不同。这里是一个示例应用程序演示记录此信息。

我们能否同时获取应用程序在WiFi和移动网络下的数据使用情况? - Sagar Maiyad
@Erick:是的,TrafficStats 报告 WiFi 和移动数据分开。 - CommonsWare
但是针对特定的应用程序呢? - Sagar Maiyad
@Erick:啊,抱歉不支持。 - CommonsWare
链接已过期。 :( - kolboc
1
@kolboc:感谢您指出这一点!我已经更新了链接,换成了更好的一个。 - CommonsWare

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接