安卓如何测量WiFi/2G/3G上传下载速度?

4
我在谷歌上搜索了许多,但没有找到如何测量 Android 的 wifi/2G/3G 网速的教程。
最终通过大量搜索,我终于得到了下载速度,详见此文,但上传速度仍未知。
请问是否有任何 API 或教程可以解决这个问题?非常感谢您的帮助!
谢谢您的提前帮助。
3个回答

0

由于存在多种采样方法,没有一种“真正”的速度,因此没有内置的Android库。 您可以查看以下标准,以便更好地了解推荐的方式:

https://itu.int/en/ITU-T/C-I/Pages/IM/Internet-speed.aspx

https://itu.int/itu-t/recommendations/rec.aspx?rec=q.3960

https://itu.int/ITU-T/recommendations/rec.aspx?rec=14125

https://tools.ietf.org/pdf/rfc6349.pdf

无论你选择什么算法,一定要确保其是多线程的(在多个线程中并行下载一个或多个文件,上传同理)。
你也可以使用我们的Android SDK,它应该能满足你的需求,并符合ITU标准:

https://github.com/speedchecker/speedchecker-sdk-android


0

您需要实现自己的速度测试测量程序。您可以在此处找到Ookla的speedtest算法描述: http://wiki.ookla.com/lq_test_flow

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


0
一个非常简单的通用方法,不需要任何特殊工具:
上传/下载已知大小的文件到某个服务器(如果您没有自己的服务器,可以使用Dropbox等),并使用CountDownTimer测量所需时间。
然后,您可以使用收集的数据轻松计算速度。

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