WifiManager, disableNetwork () всегда возвращает false в Oreo

Это мой код, возвращаемое значение всегда ложно. У меня включено разрешение "Местоположение". Я использую этот код для программного подключения к другой сети (ОТКРЫТЬ) [код здесь не приводится. Я использую enableNetwork () и reconnect ()]. Но затем телефон автоматически подключается к предыдущей сети. Эта проблема наблюдается в Google Pixel v8.1.0. Проверял в android v7. работает отлично.

    WifiManager wifiManager = (WifiManager) context.getApplicationContext().getSystemService(Context.WIFI_SERVICE);
                List<WifiConfiguration> configurations = wifiManager.getConfiguredNetworks();
                for (WifiConfiguration config : configurations) {
                    Log.d("bhargav","SSID "+config.SSID);
//here it always returns false.
                        LibreLogger.d(this,"Disabling "+config.SSID+", result -> "+wifiManager.disableNetwork(config.networkId));

                }

из документа: Приложениям не разрешено отключать сети, созданные другими приложениями. - вы уверены, что ваше приложение создало эту сеть?

Selvin 07.06.2018 14:18

Селвин, я использую этот код для программного подключения к другой сети (ОТКРЫТЬ). Но затем телефон автоматически подключается к предыдущей сети. Итак, я подумал, что отключение сети решит проблему.

Bhargav Kumar 07.06.2018 14:23
0
2
999
1

Ответы 1

При попытке отключить внешние сети по отношению к приложению в Oreo появляется следующая ошибка:

E/WifiConfigManager: UID XXXX does not have permission to update configuration "SSID"

Проверьте ответы эти для получения более подробной информации.

Другие вопросы по теме