Android O WifiManager.enableNetwork()无法正常工作

时间:2018-05-22 08:20:23

标签: android

所有的拳头,我用我的手机手动设置两个wifi,然后我用WifiManager.enableNetwork()我可以成功切换wifi,但几秒后,wifi切换回以前的wifi,是什么原因? 请告诉我。

  

设备:华硕ZenFone 5(Android 8.0.0)

代码:

void connectWiFi(String networkSSID) {
    int networkId = getNetworkId(networkSSID);
    wifiManager.disconnect();
    wifiManager.enableNetwork(networkId, true);
    wifiManager.reconnect();
}

int getNetworkId(String ssid) {
    List<WifiConfiguration> configurations = wifiManager.getConfiguredNetworks();
    for (WifiConfiguration config : configurations) {
        if (config.SSID != null && config.SSID.equals("\"" + ssid + "\"")) {
            return config.networkId;
        }
    }
    return -1;
}

1 个答案:

答案 0 :(得分:1)

我找到了答案。

首先,使用广播收听WiFi断开连接,然后使用wifiManager.disconnect(),等待广播断开连接,然后使用wifiManager.enableNetwork(networkId, true)