Cómo medir el uso de datos de mi aplicación

Estoy desarrollando una aplicación para Android que necesita descargar una gran cantidad de datos.

Para mejorar la usabilidad, me gustaría medir el tráfico de datos que produce mi aplicación y dar a los usuarios una pista si la aplicación descargó una cantidad específica de datos.

Mi idea actual: Sumar todos los bytes descargados juntos y reaccionar en un límite especificado. Sin embargo, como he descargado cosas en muchas situaciones diferentes y en muchas posiciones diferentes en el código, ¿existe alguna otra posibilidad para medir el uso de datos por aplicación?

AFAIK, sys/net/NETINTERFACE/statistics/rx_bytes informa la cantidad total de todo el sistema, por lo que esta no es una solución.

Sin embargo, como he descargado cosas en muchas situaciones diferentes y en muchas posiciones diferentes en el código, ¿hay alguna otra posibilidad de medir el uso de datos por aplicación?

TrafficStats puede ser capaz de informar las cosas por UID. Yo digo "puede" porque parece atado a dispositivos. Sospecho que Android 3.0+ informará constantemente por UID, pero mis 2.2 y 2.3 experiencia se ha mezclado.

Aquí hay una aplicación de ejemplo que demuestra la grabación de esta información.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.