¿Es posible activar el modo Avión solo con WiFi?
Bueno, sí, 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 punto de acceso portátil.
Las radios que se supone que están apagadas cuando se habilita el modo Avión se guardan en la clave airplane_mode_radios
debajo de la tabla global
dentro /data/data/com.android.settings/databases/settings.db
( base de datos de la aplicación de Almacenamiento de configuraciones ).
Configure adb en la PC, habilite la depuración de USB en el dispositivo, conéctelo a la PC, inicie un shell e ingrese:
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ía (ya sea uno de los resultados) algo como:
cell,bluetooth,wifi,nfc,wimax
Row: 0 name=airplane_mode_toggleable_radios, value=bluetooth,wifi,nfc
Puede elegir eliminar wifi
del valor para lograr el objetivo final.
Ingrese 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 copie y pegue. Tenga en cuenta la cadena que obtuvo en la primera salida. Luego, elimínelo wifi,
y luego pase la resultante entre comillas dobles de ""
la manera que he mostrado anteriormente.
Ahora puede encender el Wi-Fi seguido del modo Avión. Tu wifi no se apagará.
La necesidad de usar ADB fue solo por una vez. Si decide detener el Wi-Fi cuando el modo Avión se activa, simplemente incremente wifi
el valor de esa tecla.
¡Todo bien aquí!
¿Tú sabes?
La razón por la que puede alternar manualmente Wi-Fi, Bluetooth y NFC incluso cuando el modo Avión está activo es porque se mencionan en el valor de la tecla airplane_mode_toggleable_radios
.
Ingrese 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ía (cualquiera de ellos) algo como:
bluetooth,wifi,nfc
Row: 0 name=airplane_mode_toggleable_radios, value=bluetooth,nfc
Elimine una radio del valor de esa tecla, por ejemplo, wifi
y no podrá volver a alternar esa radio (Wi-Fi aquí) cuando el modo Avión esté activo, pase lo que pase, a menos que, por supuesto, revierta los cambios en el valor de esa tecla.