Android - 仍然无法以编程方式删除Wifi网络

时间:2017-02-26 09:01:10

标签: java android wifimanager

在阅读了其他几个问题/答案后,我仍然遇到使用wifiManager.removeNetwork工作的问题。

根据:

Android - Cant Remove Wifi Network Programatically- The method removeNetwork(int) in the type WifiManager is not applicable for the arguments (String)

How to forget a wireless network in android programmatically?

...我的代码应该有效:

WifiManager wifiMAN = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE);

for (WifiConfiguration wifiCon : wifiMAN.getConfiguredNetworks()) {
    if (wifiCon.SSID.equals( "\""+ targetNetworkName +"\"")) {
        wifiMAN.removeNetwork(wifiCon.networkId)) {
        wifiMAN.saveConfiguration();
        break;
    }
}

然而,当我在API 23上测试它不起作用。查看代码时,没有任何内容显示为折旧,代码适用于API 21.任何人都有任何想法吗?

1 个答案:

答案 0 :(得分:5)

这是预期的行为。截至Android M应用程序不允许修改他们未创建的网络。

请参阅:https://code.google.com/p/android/issues/detail?id=187347https://developer.android.com/about/versions/marshmallow/android-6.0-changes.html#behavior-network