Parece que nVidia Shield Android TV viene con Android 5.1.1 y una actualización de Marshmallow está disponible solo desde diciembre. Supongo que Android 5.1.1 es la versión instalada en su dispositivo.
Consultar servicios del sistema
Habilite adb en modo inalámbrico en el dispositivo. Siga la guía oficial o esta respuesta de Izzy para obtener instrucciones, si es necesario.
Puede encontrar el estado de Android, en reposo o despierto, desde el volcado de varios servicios del sistema.
Servicio: poder
adb shell dumpsys power
Buscar las cadenas mWakefulness
y / o Display Power: state
. Ambos te darían el estado que necesitas.
Ejemplo:
adb shell 'dumpsys power | grep -e "mWakefulness=" -e "Display Power"'
me da
mWakefulness=Asleep
Display Power: state=OFF
Servicio: ventana
adb shell dumpsys window
Buscar las cadenas mAwake=true
y / o mScreenOnEarly=true
y / omScreenOnFully=true
Ejemplo:
adb shell 'dumpsys window | grep -e "mAwake=" -e "mScreenOnEarly" -e "mScreenOnFully"'
me da
mAwake=true
mScreenOnEarly=true mScreenOnFully=true
Servicio: pantalla
adb shell dumpsys display
Buscar las cadenas mState=OFF
y / o mScreenState=OFF
.
Ejemplo:
adb shell 'dumpsys display | grep -e "mState=" -e "mScreenState"'
me da
mState=OFF
mScreenState=OFF
Usar automatización
Si ninguno de los servicios del sistema mencionados en el método anterior funcionó para usted, configure una aplicación de automatización , como Tasker o MacroDroid o Automate.
Ahora usaríamos la automatización para escribir el estado de Android en un archivo, como Dormir para el modo de suspensión y Despertar cuando está despierto.
- Perfil: Evento → Pantalla → Pantalla desactivada
- Tarea: (Acciones): Archivo → Escribir archivo → seleccione un archivo de texto para escribir, escriba Dormir y desmarque Agregar nueva línea
- Perfil: Evento → Pantalla → Pantalla activada
- Tarea: (Acciones): Archivo → Escribir archivo → seleccione un archivo de texto para escribir, escriba Despertar y desmarque Agregar nueva línea
Android lamentablemente no viene con echo
o printf
utilidad, si el dispositivo tiene sus raíces entonces se puede instalar busybox y estar en paz. De lo contrario, descargue binario busybox , establezca permisos ejecutables y póngalo en /data/local/tmp
uso adb push
. Otra forma para un dispositivo no rooteado es mantener tres archivos, uno para el estado, uno con el texto Durmiendo y el último con el texto Despertar. Siempre que la pantalla se apague / encienda, copie el segundo / tercer archivo en el primero.
MacriDroid también requiere un complemento, como Configuración segura para ejecutar comandos.
Para un Android no rooteado, echo
debe reemplazarse con ./data/local/tmp/busybox echo
. De lo contrario, realice una operación de copia con el comando cp SOURCE DESTINATION
.
Tu flujo debería verse más o menos como esta imagen
(Haga clic en la imagen para ampliarla)
Su necesidad de crear dos flujos, uno para dormir y otro para estar despierto. El segundo bloque en el flujo se denomina recepción de difusión y se puede encontrar en Aplicaciones. El tercer bloque se llama Texto de escritura de archivo y se puede encontrar en Archivo y almacenamiento.
Ahora puede verificar el contenido de ese archivo usando adb en modo inalámbrico o SSH (requiere un servidor SSH en Android; ejecute el servidor en todas las interfaces y no lo vincule a una sola interfaz).
Existe otra posibilidad, como hacer que su aplicación de automatización cargue el archivo en un servidor local o remoto para que pueda consultar ese servidor en lugar de Android para conocer el estado.