¿Es posible activar el modo Avión con solo el WiFi encendido?
Sí, es posible en todos mis dispositivos con Android 4.2.1, 4.4.2, 5.0.2 y 5.1.1. Esto también se aplica para el hotspot portátil.
Las radios que se supone que se apagan cuando se activa el modo Avión se guardan en la clave airplane_mode_radios
bajo la tabla global
dentro de /data/data/com.android.settings/databases/settings.db
(base de datos de la aplicación Configuración de Android).
Configura adb en la PC, habilita la depuración USB en el dispositivo, conéctalo a la PC, inicia una terminal y escribe:
adb shell settings get global airplane_mode_radios
adb shell content query --uri content://settings/global --projection name:value --where "name='airplane_mode_radios'"
Dado el comando ejecutado, verías (uno de los resultados) algo como:
cell,bluetooth,wifi,nfc,wimax
Row: 0 name=airplane_mode_toggleable_radios, value=bluetooth,wifi,nfc
Puedes optar por eliminar wifi
del valor para lograr el objetivo final.
Escribe cualquiera de los comandos:
adb shell settings put global airplane_mode_radios "cell,bluetooth,nfc,wimax"
adb shell content update --uri content://settings/global --bind value:s:'cell,bluetooth,nfc,wimax' --where "name='airplane_mode_radios'"
Nota: No copies y pegues. Toma nota de la cadena que obtuviste en la primera salida. Luego elimina wifi,
de ella y luego pasa el resultado entre comillas dobles ""
de la manera que te he mostrado arriba.
Ahora puedes encender el Wi-Fi seguido por el modo Avión. Tu Wi-Fi no se apagaría.
La necesidad de usar ADB era solo una vez. Si decides detener el Wi-Fi cuando el modo Avión se activa, simplemente incluye wifi
en el valor de esa clave.
¡Todo bien aquí!
¿Sabías?
La razón por la que puedes alternar manualmente el Wi-Fi, Bluetooth y NFC incluso cuando el modo Avión está activo es porque están mencionados en el valor de la clave airplane_mode_toggleable_radios
.
Escribe cualquiera de los comandos:
adb shell settings get global airplane_mode_toggleable_radios
adb shell content query --uri content://settings/global --projection name:value --where "name='airplane_mode_toggleable_radios'"
Verías (uno de ellos) algo como:
bluetooth,wifi,nfc
Row: 0 name=airplane_mode_toggleable_radios, value=bluetooth,nfc
Elimina una radio del valor de esa clave como wifi
y no podrás alternar esa radio (Wi-Fi aquí) nuevamente cuando el modo Avión esté activo, sin importar qué, a menos que, por supuesto, reviertas los cambios en el valor de esa clave.