Recepción de ADB BOOT_COMPLETE
Quiero esperar hasta que el teléfono móvil android se haya iniciado y el MediaScanner esté listo.
Después quiero realizar una acción usando adb.
- El receptor de arranque no funciona
- Android cursorLoader con paginación o carga más funcionalidad?
- Detectar si HTC "Fast boot" está habilitado
- Inflar diseño en ListItem basado en la variable específica ListItem
- Problemas con las devoluciones de llamada personalizadas de AsyncTaskLoader
adb wait-for-device terminará mucho antes de que se complete la secuencia de arranque del teléfono celular.
¿Cómo capturar, por ejemplo, BOOT_COMPLETE Broadcast a través de ADB? Algo así como: wait-for-boot-complete. No sé si esto es posible?
- Dex Loader No se puede ejecutar Los archivos dex múltiples definen
- onCreateLoader bloquea el subproceso de interfaz de usuario
- Uso de Loader en API 8
- BroadcastReceiver no recibe BOOT_COMPLETED
- Android: LoaderCallbacks.OnLoadFinished llamado dos veces
- ¿Cómo subir el archivo a la caja de la url?
- ¿Los usuarios de Samsung Glaxy S4 informan que el receptor BOOT_COMPLETED no funcionará?
- Boot / ScreenOn Broadcast Receiver no funciona
Puede seguir dev.bootcomplete
propiedades del sistema sys.boot_completed
o dev.bootcomplete
.
En cuanto al código, no sé qué entorno y / o lenguaje de secuencias de comandos está utilizando. Es bastante sencillo. En primer lugar, debe buscar qué propiedad está configurada como "1" en la finalización del arranque con el software de su teléfono. Digamos que es dev.bootcomplete
. A continuación, el siguiente comando devolverá el control a su script después de que el teléfono se arranque
adb wait-for-device shell 'while [[ -z $(getprop dev.bootcomplete) ]] ; do sleep 1; done'
Para aquellos de ustedes que trabajan en un entorno de Windows, este script por lotes funciona para mí.
Espera hasta que el daemon ADB se ejecute, y luego comienza a sondear la propiedad sys.boot_completed
y espera un valor de 1.
No es tan elegante como una sola línea, pero tengo el script listado en mi variable de entorno PATH para que pueda ser llamado directamente.
adb wait-for-device :CheckAgain set value= for /f "delims=" %%a in ('adb shell getprop sys.boot_completed') do @set value=%%a IF NOT "%value%" == "1" ( timeout /t 2 /nobreak >NUL goto CheckAgain )
Si su dispositivo no tiene busybox instalado (vea shell script en android da [: no encontrado ], puede intentar iterar en su computadora. Algo así funcionaría:
while [ `adb shell getprop dev.bootcomplete` -nq "1" ] ; do sleep 1; done
Si su dispositivo tiene busybox instalado, puede proceder como Alex P. comentó:
adb shell 'while [ ""`getprop dev.bootcomplete` != "1" ] ; do sleep 1; done'
Por supuesto la sintaxis depende de su máquina (POSIX, etc).
- Recycler View Excepción grave: java.lang.ArrayIndexOutOfBoundsException
- Cómo recortar un rectángulo de una imagen en android