2015-09-24 6 views
8

auf Android M: Ich benutze unten Code, um den aktuellen verbundenen AP zu entfernen.Android M: kann Wi-Fi-AP programmgesteuert nicht entfernen

void RemoveConnectedNetwork(){ 
    int ID=_wifiManager.getConnectionInfo().getNetworkId(); 
    Log.d("test", "network id = ["+ID+"]"); 
    boolen ret =_wifiManager.removeNetwork(ID); 
    Log.d("test", "removeNetwork return ="+ret); 
    _wifiManager.saveConfiguration(); 
} 

aber removeNetwork gibt immer false zurück. obwohl diese API in früheren Versionen gut funktionierte. irgendeine Idee, das gleiche kann mit jeder anderen API erreicht werden?

Antwort

12

Es gibt einige Änderungen im Wifi Manager in Android 6.0 Jede Wi-Fi-Konfiguration, die von einem aktiven Gerätebesitzer erstellt wurde, kann nicht mehr vom Benutzer geändert oder gelöscht werden, wenn WIFI_DEVICE_OWNER_CONFIGS_LOCKDOWN ungleich Null ist. Der Benutzer kann weiterhin eigene Wi-Fi-Konfigurationen erstellen und ändern. Eigentümer aktiver Geräte haben die Berechtigung, alle WLAN-Konfigurationen zu bearbeiten oder zu entfernen, einschließlich derer, die nicht von ihnen erstellt wurden.

entnehmen Sie bitte diesen Link für weitere Details https://developer.android.com/about/versions/marshmallow/android-6.0-changes.html

+0

Dank. Ähnliche Antwort von Google erhalten https://code.google.com/p/android/issues/detail?id=187347 –