14

我用谷歌搜索并发现许多网站都说“禁用 Wifi 无线电”。但在我的情况下,我只希望 android 设备从特定的 wifi 网络(SSID 预先知道)断开而不关闭 WiFi 无线电。请给我一些关于这个问题的见解

4

1 回答 1

18

哇,这不应该花一个月的时间来回答。

这是我通常使用的最简单的方法:

 WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
 wifi.disconnect();
 discon = new DisconnectWifi();
 registerReceiver(discon, new IntentFilter(WifiManager.SUPPLICANT_STATE_CHANGED_ACTION));

DisconnectWifi只是扩展BroadcastReceiver的一个小类:

  public class DisconnectWifi extends BroadcastReceiver  {

    @Override
    public void onReceive(Context c, Intent intent) {
        if(!intent.getParcelableExtra(wifi.EXTRA_NEW_STATE).toString().equals(SupplicantState.SCANNING)) wifi.disconnect();
        }
    }
于 2012-06-06T09:28:02.857 回答