2016-11-14 116 views
0

我試圖讓我當前的Wifi上網速度MBPS我的android應用程序,並將其結果與https://fast.com結果進行比較。我如何獲得準確的無線網絡getLinkSpeed MBPS

所以我採用了android WifiInfo:https://developer.android.com/reference/android/net/wifi/WifiInfo.html#getLinkSpeed

WifiManager wifiManager = (WifiManager) context.getSystemService(context.WIFI_SERVICE); 
WifiInfo info = wifiManager.getConnectionInfo(); 
float linkSpeed = info.getLinkSpeed(); // linkSpeed gives me 65 

這是假設根據文檔的意思是65Mbps。但是當我檢查fast.com結果時,我得到了2.9 Mbps。

這看起來像我的getLinkSpeed()結果是不正確的,也許我誤解了它。請任何人有一個想法如何獲得準確的Wifi速度。謝謝

回答

1

您的Wi-Fi速度不等於您的外部互聯網速度。
getLinkSpeed()返回本地wifi網絡速度。但外部互聯網訪問速度可能會(並且會)不同。

getLinkSpeed()將返回接近精確的WIFI網絡速度。但要衡量您的互聯網連接速度,你必須例如從互聯網上下載一些文件,並執行以下操作:

speed = file_size/time_to_download 
+0

好吧,但它也取決於文件有多大,它? –

+0

@HtmlTosin,它不應該依賴於文件大小。 你也可以嘗試使用一些已經制作的速度測試庫像這樣https://github.com/bertrandmartel/speed-test-lib –

+0

謝謝,檢查了這一點 –