256 votes

Événements d'entrée du shell ADB

Quelle est la différence fondamentale entre adb shell input keyevent y adb shell sendevent ? Lequel dois-je utiliser pour saisir un caractère ? Les codes clés que nous transmettons aux deux commandes sont-ils les mêmes ?

10voto

Y_Yen Points 16

Une autre différence :

  • " Entrée de l'interpréteur de commandes adb "appelle le fichier input.jar pour traiter et envoyer le code clé à partir de la couche Java du cadre Android.
  • " adb sendevent "est en fait un code c (qui fait partie de l'utilitaire Toolbox) qui envoie le code d'entrée directement dans /dev/input.... du sous-système d'entrée de Linux.

Pour plus de détails sur le code de traçage à l'intérieur du cadre AOSP, cliquez ici :

http://www.srcmap.org/sd_share/4/aba57bc6/AOSP_adb_shell_input_Code_Trace.html#RefId=7c8f5285

5voto

Si vous souhaitez envoyer un texte à un appareil spécifique lorsque plusieurs appareils sont connectés. Recherchez d'abord les appareils connectés à l'aide de Périphériques adb

adb devices
List of devices attached
3004e25a57192200        device
31002d9e592b7300        device

puis récupérez l'identifiant de votre appareil et essayez ce qui suit

adb -s 31002d9e592b7300 shell input text 'your text'

3voto

MorenoMdz Points 61

Pour envoyer un appel de rechargement à une application React-Native s'exécutant sur un appareil Android : adb shell input keyboard text "rr"

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X