Расхождение между добавленным Android Data Usage и подробным использованием каждого приложения
Когда я добавляю подробное потребление в приложении
NetworkStats networkStats = networkStatsManager.querySummary(ConnectivityManager.TYPE_WIFI, null, start, end);
long totalData = 0;
NetworkStats.Bucket bucket = new NetworkStats.Bucket();
while (networkStats.hasNextBucket()) {
networkStats.getNextBucket(bucket);
totalData = bucket.getTxBytes() + bucket.getRxBytes();
}
Если бы я сравнил totalData с тем, что показывает Android как использование добавленных данных, то они разные. Откуда эта разница?
Я предполагаю, 1024bytes = 1kb 1024kb = 1MB и так далее...
- Если вы сравниваете настройки Datally и Android - у них также есть некоторые расхождения между общим использованием в некоторых устройствах.
- Я предполагаю, что это из-за заголовков, которые, возможно, Android не добавляет как использование данных? IPV4 может быть где-то между 20-60 байтами на MTU (1500 байтов), что добавило бы еще 3-4% к общему использованию данных. Но я не смог найти никакой информации, чтобы поддержать это...
- и прежде чем спросить - да. Я удостоверился, что циклы и даты синхронизированы, все тесты были сделаны, когда данные были очищены.
Вот прикрепленное изображение с примером. В этом примере, если мы сложим все использование приложения, общая сумма составит 59,88 МБ, а не 62,27 МБ, которые сообщает мне Android.