Android – No puede eliminar la red Wifi de forma programática El método removeNetwork (int) en el tipo WifiManager no es aplicable a los argumentos (String)
Estoy intentando quitar mi red del wifi programatically – sin embargo no puedo parecer conseguirlo para quitar / olvidar la conexión wifi actualmente conectada. Esta debe ser una tarea bastante simple – por lo que no estoy seguro de exactamente lo que estoy haciendo mal.
Estoy usando el siguiente post de StackOverflow como un ejemplo:
- ¿Cómo puedo ordenar la lista de getScanResults () basada en la intensidad de la señal en orden ascendente?
- Cómo deshabilitar la conexión automática WIFI en Android
- Aplicación de Android que no se conecta a Wifi, pero funciona bien en 3G compartida a través de Wifi
- Android ESC / POS Impresión sobre WiFi
- Android wifi sniffer: encuentra dispositivos cercanos
¿Cómo olvidar una red inalámbrica en android mediante programación?
public class KillTimer extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.killtimer); WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE); wifiManager.getConnectionInfo().getSSID() wifiManager.getConnectionInfo().getNetoworkId(); wifiManager.removeNetwork(wifiConfig.networkId); wifiManager.saveConfiguration(); }}
- ¿Qué es diferente de NSD y WifiP2pManager?
- Cómo crear y leer configuraciones WEP / EAP WiFi de forma programática en Android?
- Android Compruebe si hay WiFi pero no Internet
- ¿Cómo averiguar otro usuario conectado a la misma red WIFI con la que está en android?
- LocationManager devuelve la antigua ubicación en caché "Wifi" con la marca de hora actual
- Supervisión del WiFi en el dispositivo Android
- Obtener la intensidad de la señal de WIFI y datos móviles
- Portal cautivo con hotspot android configurado mediante programación
removeNetwork()
sólo toma parámetros enteros. networkSSID
es un valor de cadena. Esa es la causa del error. Veo que está utilizando SSID que es una cadena. Tienes que dar el id de red que es entero. Puede intentar getConnectionInfo().getSSID()
y comparar con su ssid, si son iguales, entonces usted puede intentar obtener getConnectionInfo().getNetoworkId()
que debe dar la red de la red de identificación de la red, que puede utilizar para removeNetwork.
Prueba esto:
public class KillTimer extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.killtimer); WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE); int networkId = wifiManager.getConnectionInfo().getNetworkId(); wifiManager.removeNetwork(networkId); wifiManager.saveConfiguration(); }}
private void RemoveWifiNetworks() { WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE); List<WifiConfiguration> list = wifiManager.getConfiguredNetworks(); for (WifiConfiguration i : list) { //int networkId = wifiManager.getConnectionInfo().getNetworkId(); wifiManager.removeNetwork(i.networkId); wifiManager.saveConfiguration(); } }
- Compilación de una sencilla aplicación portátil en Android Studio – WatchActivity not found
- Valor de preferencia personalizada de Android no guardado