0

次のコードを使用しましたが、まだ問題があり、情報が返されません。

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //initializeWiFiListener();

    }

    public void initializeWiFiListener() {

        String connectivity_context = Context.WIFI_SERVICE;

        final WifiManager wifi = (WifiManager) getSystemService(connectivity_context);

        if (!wifi.isWifiEnabled()) {

            if (wifi.getWifiState() != WifiManager.WIFI_STATE_ENABLING) {

                wifi.setWifiEnabled(true);
            }
        }

      registerReceiver(new BroadcastReceiver() {
            public void onReceive(Context context, Intent intent) {

                WifiInfo info = wifi.getConnectionInfo();
                String ssid = info.getSSID();
                int rssi = info.getRssi();
                int speed = info.getLinkSpeed();
                TextView t1 = (TextView) findViewById(R.id.textView);
                t1.setText(ssid + " " + Integer.toString(rssi) + " " + Integer.toString(speed));
            }

        }, new IntentFilter(WifiManager.RSSI_CHANGED_ACTION));
    }

}

接続されている Wi-Fi に関する情報がありません。

wifi信号情報を取得する方法:強度、リンク速度?

4

1 に答える 1

0

ドキュメントに基づいて、getConnectionInfo()onWifiManagerを呼び出してオブジェクトを取得しWifiInfoます。そこにはgetRssi()、信号強度とgetLinkSpeed()リンク速度があります。

于 2015-09-13T12:55:49.367 に答える