Android wifi getLinkSpeed()始终返回一个值

Android wifi getLinkSpeed()始终返回一个值,android,android-wifi,android-internet,Android,Android Wifi,Android Internet,我正在开发一个显示互联网速度的应用程序。 比如: 我必须随时获得WiFi速度,我使用了runnable: WifiManager wm = (WifiManager)getSystemService(Context.WIFI_SERVICE); WifiInfo wifiInfo = wm.getConnectionInfo(); .... runnable = new Runnable() { @Override public void run() {

我正在开发一个显示互联网速度的应用程序。 比如:

我必须随时获得WiFi速度,我使用了runnable:

WifiManager wm = (WifiManager)getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = wm.getConnectionInfo();
....

runnable = new Runnable() {

    @Override
    public void run() {

        int linkSpeed = wifiInfo.getLinkSpeed();
        chatHead.setText( "Speed : " + linkSpeed);
        handler.postDelayed(runnable,100); 

    }
};

handler.postDelayed(runnable,100); 
但即使在下载时,速度也不会改变。 我有点困惑

我可以随时上网,我能做什么? 是否应从本机代码中使用?还是Java代码


请帮助我。

链路速度是您的设备与wifi基站之间的最大协议速度


如果您想测量一段时间内传输的实际数据量,请查看。

在不查看详细信息的情况下,返回的速度可能是理论上的最大值,不考虑信号质量、丢失或拥塞,并且可能不是wifi是下载速度的瓶颈。