Android流量统计报告的内容超出了我的下载量

时间:2014-02-26 02:35:03

标签: java android networking download

您好我正在运行一个简单的下载测试,以查看我的连接速度有多快。我记录了trafficStats的rx值,然后我下载了一个5MB的文件,然后记录rx值然后计算差值。我知道这个文件正好是5MB。

以下是代码:

URL url = new URL(urlString);
URLConnection urlConnection = url.openConnection();
urlConnection.setConnectTimeout(connectTimeout);
urlConnection.setReadTimeout(readTimeout);

InputStream is = urlConnection.getInputStream();
// BufferedInputStream bis = new BufferedInputStream(is);
InputStream bis = new BufferedInputStream(is, 8192);
int inputFileSize = 1024;
byte[] baf = new byte[inputFileSize];

totalRxBeforeTest = TrafficStats.getUidRxBytes(uid);

int current = 0;
while ((current = bis.read(baf)) != -1) {
}
totalRxAfterTest = TrafficStats.getUidRxBytes(uid);
rxDiff = totalRxAfterTest - totalRxBeforeTest;

问题是,我应该得到大约5242880字节(5MB)的值,但我得到的值如5414730,5408715,5413867,5426647。(从4次测试运行)我希望有一些开销,但这是额外的168KB!对于一个5MB的文件来说,接口就像很多开销一样。我也使用uid的TrafficStats,所以它应该只是我特定应用程序的网络统计数据。

知道什么可以解释这个额外的流量?

0 个答案:

没有答案