¿Cómo apagar la señal de radio a través de adb sin modo avión?

Como estoy tratando de hacer un script para reiniciar la señal de radio y no estoy usando un cable USB para adb, necesito apagar mi señal móvil SIN usar el avión (porque estoy usando Wifi Hotspot y Wifi ADB).

¿Hay una solución para eso? Tengo root y wifi adb funcionando sin problemas... y he visto alguna solución como deshabilitar los datos móviles, etc., pero esto no es suficiente para mí. Mi proveedor a veces deja de proporcionarme conexión móvil y la única forma de obtener datos móviles activos es reiniciar la señal de radio (tal como lo haría si escribo # #4636*#*# y presiono "apagar/encender radio" botón).

Además, si es posible, después de apagar la señal de radio, tendría que esperar +- 10 segundos antes de continuar (supongo que el comando para eso es dormir 10).

Gracias: D

PD: Android Lollipop 5.1.1 (Xperia Z1)

Respuestas (1)

Necesito apagar mi señal móvil SIN usar avión (porque estoy usando Wifi Hotspot y Wifi ADB).

Puede configurar su dispositivo para que no detenga el Wi-Fi (incluye Hotspot) al activar el modo Avión.

( Nota: probé la solución en Android 4.2.1, 4.4.2, 5.0.2 y 5.1.1.)

Las radios que se supone que deben apagarse cuando se habilita el modo Avión se guardan en la clave airplane_mode_radiosdebajo de la tabla en el globalinterior /data/data/com.android.settings/databases/settings.db( base de datos de la aplicación Configuración de almacenamiento ).

Configure en la PC, habilite la depuración USB en el dispositivo, conéctelo a la PC, inicie un shell e ingrese cualquiera de los comandos

adb shell settings get global airplane_mode_radios
adb shell content query --uri content://settings/global  --projection name:value --where "name='airplane_mode_radios'"

(Consulte el uso de la configuración y el comando de contenido usando la configuración de adb shell y el contenido de adb shell )

Dado el comando que ejecutó, vería algo como (cualquiera de los resultados):

cell,bluetooth,wifi,nfc,wimax
Row: 0 name=airplane_mode_radios, value=cell,bluetooth,wifi,nfc,wimax

Puede optar por eliminar wifidel valor para lograr el objetivo final.

Introduzca 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 copiar y pegar. Tenga en cuenta la cadena que obtuvo en la primera salida. Luego elimínelo wifi,y luego pase el resultado entre las comillas dobles ""de la manera que se muestra arriba.

Ahora puede activar Wi-Fi/Hotspot seguido del modo Avión. Su Wi-Fi/Hotspot no se apagaba.

La necesidad de usar ADB fue pensada solo una vez. Si decide detener Wi-Fi cuando el modo Avión se activa, simplemente agregue wifiel valor de esa clave.

Respuesta escrita originalmente para ¿Es posible activar el modo avión solo con WiFi?

¡Gracias! Además de eso, para la función de encendido y apagado del avión, seguí esto ¿Cómo apagar la radio celular en Lollipop/JellyBean usando adb? solo agregando ADB SHEEL antes de cada comando. :D
Ah, eso es lo que necesitaba hace una semana. Si solo actualiza los campos en la base de datos, solo se activa después de reiniciar. Apuesto a que el tuyo no necesita eso :)