Il semble que nVidia Shield Android TV soit livré avec Android 5.1.1 et une mise à jour Marshmallow est disponible depuis décembre uniquement. Je suppose que Android 5.1.1 est la version installée sur votre appareil.
Services du système de requête
Activez adb en mode sans fil sur l'appareil. Suivez le guide officiel ou cette réponse d'Izzy pour obtenir des instructions, si nécessaire.
Vous pouvez trouver l'état d'Android - en veille ou éveillé - à partir du vidage de divers services système.
Service: Puissance
adb shell dumpsys power
Recherchez les chaînes mWakefulness
et / ou Display Power: state
. Les deux vous donneraient le statut dont vous avez besoin.
Exemple:
adb shell 'dumpsys power | grep -e "mWakefulness=" -e "Display Power"'
Donne moi
mWakefulness=Asleep
Display Power: state=OFF
Service: Fenêtre
adb shell dumpsys window
Rechercher les chaînes mAwake=true
et / ou mScreenOnEarly=true
et / oumScreenOnFully=true
Exemple:
adb shell 'dumpsys window | grep -e "mAwake=" -e "mScreenOnEarly" -e "mScreenOnFully"'
Donne moi
mAwake=true
mScreenOnEarly=true mScreenOnFully=true
Service: Affichage
adb shell dumpsys display
Recherchez les chaînes mState=OFF
et / ou mScreenState=OFF
.
Exemple:
adb shell 'dumpsys display | grep -e "mState=" -e "mScreenState"'
Donne moi
mState=OFF
mScreenState=OFF
Utiliser l'automatisation
Si aucun des services système mentionnés dans la méthode précédente ne fonctionnait pour vous, configurez une application d' automatisation , telle que Tasker ou MacroDroid ou Automate.
Nous utiliserions maintenant l'automatisation pour écrire le statut d'Android dans un fichier, comme Sleeping for sleep mode et Awake lorsqu'il est réveillé.
- Profil: Événement → Affichage → Affichage désactivé
- Tâche: (Actions): Fichier → Écrire un fichier → sélectionnez un fichier texte dans lequel écrire, tapez Veille et décochez Ajouter une nouvelle ligne
- Profil: Événement → Affichage → Affichage activé
- Tâche: (Actions): Fichier → Écrire un fichier → sélectionnez un fichier texte dans lequel écrire, tapez Awake et décochez Ajouter une nouvelle ligne
Android ne vient malheureusement pas avec echo
ou printf
utilitaire, si l'appareil est enraciné, vous pouvez installer busybox et être en paix. Sinon, téléchargez le binaire busybox , définissez les autorisations exécutables et poussez-le à /data/local/tmp
utiliser adb push
. Un autre moyen pour un périphérique non rooté est de conserver 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 / s'allume, copiez le deuxième / troisième fichier dans le premier.
MacriDroid nécessite également un plugin, tel que Secure Settings 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 à l'aide de la commande cp SOURCE DESTINATION
.
Votre flux devrait plus ou moins ressembler à cette image
(Cliquez sur l'image pour agrandir)
Votre besoin de créer deux flux, l'un pour le sommeil et l'autre pour le réveil. Le deuxième bloc du flux est nommé Diffusion de réception et se trouve sous Applications. Le troisième bloc est nommé File write text et se trouve sous File & Storage.
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é, telle que 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 l'état.