2013-01-02 63 views
4

我在Google上搜索过但没有找到任何教程来测量网络速度的android wifi/2G/3G的速度。Android如何测量上传/下载速度wifi/2G/3G ...?

通过搜索很多最后得到的下载速度为THIS任何一个有上传速度的想法。

任何人指导我有没有API或存在这个教程?任何帮助,将不胜感激。

在此先感谢。

回答

0

你必须实现你自己的speedtest测量例程。你可以在这里找到Ookla速度测试的算法描述: http://wiki.ookla.com/lq_test_flow

基本上你要做的是执行下载和上传例程,并测量下载和上传的时间。您可以使用System.nanoTime()获得更准确的时间戳。

0

一个无需特殊工具非常简单的一般方法是:

上传/下载已知大小的文件到一些服务器(可以使用的Dropbox等,如果你没有自己的服务器做)并测量使用CountDownTimer时间。

然后,您可以使用收集的数据轻松计算速度。

0

您可以阅读/proc/net/dev了解网络流量统计信息。在我的手机,它看起来像:

Inter-| Receive            | Transmit 
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed 
    lo:  562  8 0 0 0  0   0   0  562  8 0 0 0  0  0   0 
dummy0:  0  0 0 0 0  0   0   0  0  0 0 0 0  0  0   0 
rmnet0: 38329  220 0 0 0  0   0   0 33316  310 0 0 0  0  0   

......

我使用的是2G网络,可以从rmnet0界面中可以看出。 您可以解析文件内容并获取Net速度信息。

我希望它有帮助。