1 votes

Obtenir la taille de la barre de navigation en utilisant ADB

Je veux savoir quelle est la taille de la barre de navigation en pixel en utilisant ADB.

Utilisation de adb shell wm size donne la taille complète de l'écran au lieu de la seule barre de navigation.

Y a-t-il un moyen de l'obtenir ?

2voto

Firelord Points 23064

Entrez dans cette phrase :

adb shell dumpsys window windows| sed -n '/Window .*NavigationBar.*:/,/Window .*:/p'| grep 'Requested'

Sinon, si vous n'avez pas de Linux/Mac, essayez ceci :

adb shell
dumpsys window windows | toybox sed -n '/Window .\*NavigationBar.\*:/,/Window .\*:/p'| grep 'Requested'

Ce qui se passe dans cette phrase est le suivant :

  1. nous utilisons dumpsys pour sortir tous les détails de toutes les fenêtres affichées à l'écran (que l'écran soit allumé ou éteint)

  2. nous filtrons le contenu en utilisant sed pour afficher uniquement les lignes qui contiennent des informations sur la barre de navigation.

  3. nous grep les informations dont nous avons besoin.

    Vous pouvez également essayer de rechercher grep mSystemDecorRect . Je ne sais pas lequel est le plus fiable en toutes circonstances.

Exemple de sortie attendue :

Requested **w=1080 h=126** mLayoutSeq=10835

# if 'mSystemDecorRect' was grepped, then:

mSystemDecorRect=\[0,0\]\[1080,126\] mLastClipRect=\[0,0\]\[1080,126\]

w : largeur, h : hauteur, de votre barre de navigation respectivement.

Nota: pour une raison quelconque, si la ligne unique ne fonctionne pas ou donne une sortie inattendue, filtrez-la comme ceci. Obtenez le vidage en utilisant la première commande dumpsys, puis trouvez l'entrée pour votre NavigationBar, et dans celle-ci, recherchez la taille.

Testé sur le OnePlus 6 sous Android 10.

Crédits : Fiximan d'Unix & Linux pour sed commandement.

0voto

Frank Fan Points 9

Sur le OnePlus 3 fonctionnant sous Android 9, remplacez NavigationBar con StatusBar à la place.

adb shell dumpsys window windows| sed -n '/Window .*StatusBar.*:/,/Window .*:/p'| grep 'Requested'

Il retournera ceci

Requested w=1080 h=63 mLayoutSeq=3640

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X