Il semble que la nVidia Shield Android TV est livrée avec Android 5.1.1 et une mise à jour Marshmallow est disponible depuis décembre seulement. Je suppose qu'Android 5.1.1 est la version installée dans votre appareil.
Services du système d'interrogation
Activer adb en mode sans fil sur l'appareil. Suivez les guide officiel o cette réponse d'Izzy pour des instructions, si nécessaire.
Vous pouvez trouver le statut d'Android - sommeil ou éveillé - à partir de la décharge de divers services système.
-
Service : Puissance
adb shell dumpsys power
Rechercher les chaînes de caractères mWakefulness
et/ou Display Power: state
. Les deux vous donneraient le statut dont vous avez besoin.
Ejemplo:
adb shell 'dumpsys power | grep -e "mWakefulness=" -e "Display Power"'
me donne
mWakefulness=Asleep
Display Power: state=OFF
-
Service : Fenêtre
adb shell dumpsys window
Rechercher les chaînes de caractères mAwake=true
et/ou mScreenOnEarly=true
et/ou mScreenOnFully=true
Ejemplo:
adb shell 'dumpsys window | grep -e "mAwake=" -e "mScreenOnEarly" -e "mScreenOnFully"'
me donne
mAwake=true
mScreenOnEarly=true mScreenOnFully=true
-
Service : Afficher
adb shell dumpsys display
Rechercher les chaînes de caractères mState=OFF
et/ou mScreenState=OFF
.
Ejemplo:
adb shell 'dumpsys display | grep -e "mState=" -e "mScreenState"'
me donne
mState=OFF
mScreenState=OFF
Utiliser l'automatisation
Si aucun des services du système mentionnés dans la méthode précédente n'a fonctionné pour vous, configurez une automatisation comme Tasker, MacroDroid ou Automate.
Nous allons maintenant utiliser l'automatisation pour écrire l'état d'Android dans un fichier, par exemple Sleeping pour le mode veille et Awake lorsqu'il est éveillé.
- Profil : Événement → Affichage → Affichage désactivé
- Tâche : (Actions) : Fichier → Écrire un fichier → sélectionner un fichier texte dans lequel écrire, taper Dormir et décocher Ajouter une nouvelle ligne.
- Profil : Événement → Affichage → Affichage activé
- Tâche : (Actions) : Fichier → Écrire un fichier → sélectionner un fichier texte dans lequel écrire, taper Réveil et décocher Ajouter une nouvelle ligne.
Android n'est malheureusement pas livré avec echo
o printf
Si l'appareil est enraciné, vous pouvez installer l'utilitaire busybox et être en paix. Sinon, téléchargez busybox binaire définit les permissions de l'exécutable et le place dans le répertoire de l'entreprise. /data/local/tmp
en utilisant adb push
. Une autre façon pour un appareil non rooté est de garder trois fichiers, un pour l'état, un avec le texte Sleeping et le dernier avec le texte Awake. Chaque fois que l'écran s'éteint/se rallume, copiez le deuxième/troisième fichier dans le premier.
MacriDroid nécessite également un plugin, tel que Paramètres sécurisés pour exécuter des commandes.
Pour un Android non rooté, echo
doit être remplacé par ./data/local/tmp/busybox echo
. Sinon, effectuez une opération de copie en utilisant la commande cp SOURCE DESTINATION
.
Votre flux devrait plus ou moins ressembler à cette image
(Cliquez sur l'image pour l'agrandir)
Vous devez créer deux flux, un pour le sommeil et l'autre pour l'éveil. Le deuxième bloc dans le flux est nommé Réception des émissions et se trouve dans la rubrique Apps. Le troisième bloc s'appelle Texte d'écriture de fichier et se trouve dans la rubrique Fichier et stockage.
Vous pouvez maintenant vérifier le contenu de ce fichier en utilisant adb en mode sans fil ou en utilisant SSH (nécessite un Serveur SSH sur Android ; exécutez le serveur sur toutes les interfaces et ne le liez pas à une seule interface).
Il existe une autre possibilité, par exemple faire en sorte que votre application d'automatisation télécharge le fichier sur un serveur local ou distant afin que vous puissiez interroger ce serveur au lieu d'Android pour connaître le statut.