La commande ADB Shell Événements d'Entrée
Quelle est la différence fondamentale entre adb shell input keyevent
et adb shell sendevent
? Qui dois-je utiliser pour la saisie d'un caractère? Sont les keycodes le même que nous passons à la fois les commandes?
Vous devez vous connecter pour publier un commentaire.
Par
adb shell input keyevent
, soit uneevent_code
ou unstring
sera envoyé à l'appareil.Certaines valeurs possibles pour
event_code
sont:La
sendevent
utilitaire envoie tactile ou clavier événements, ainsi que d'autres événements pour simuler les événements matériels. Se référer à cet article pour plus de détails: Android, le faible niveau de shell cliquez sur l'écran.>adb shell input text "a b"
mais ne fonctionne pas.system('adb shell input text ('variable')
et il n'est pas envoyer quoi que ce soit. J'ai une variable qui stocke aléatoire de numéros générésMise à jour:
À l'aide de
adb shell input
:..
..
..
..
..
adb shell input swipe 200 800 200 400 200
Aussi, si vous souhaitez envoyer des espaces avec la commande d'entrée, d'utiliser %s
donnera
entrée.
%
lui-même n'a pas besoin de s'échapper - que le%s
paire est traité spécialement. Cela conduit bien sûr à la question évidente de savoir comment entrer dans la chaîne littérale%s
... qui vous auriez à faire avec les deux commandes séparées.atext "Hey, I'm here"
et il fonctionne.Par ailleurs, si vous essayez de trouver un moyen d'envoyer des guillemets pour l'appareil, essayez les solutions suivantes:
Je ne suis pas sûr de savoir pourquoi il n'y a pas de code d'événement pour les citations, mais cette solution de contournement ne le travail. Aussi, si vous êtes en utilisant MonkeyDevice (ou ChimpChat), vous devez tester chaque personnage avant d'invoquer monkeyDevice.type, sinon vous n'obtiendrez rien lorsque vous essayez d'envoyer "
atext "Hey, I'm here"
et il fonctionne.Une autre différence:
Plus en détail le code de suivi dans l'intérieur de PSBA Cadre peut être trouvé ici:
http://www.srcmap.org/sd_share/4/aba57bc6/AOSP_adb_shell_input_Code_Trace.html#RefId=7c8f5285
J'ai écris un script Powershell pour les utilisateurs de windows pour carte touches de commande adb shell événements d'entrée. Et le contrôle d'un appareil Android à distance via LAN.
Je ne sais pas si quelqu'un la trouve utile, mais je vais le partager, de toute façon.
Si vous souhaitez envoyer un texte spécifique de l'appareil lorsque plusieurs appareils connectés. Recherchez tout d'abord les périphériques connectés à l'aide de bad appareils
puis obtenir votre id de périphérique et essayez ce qui suit
Pour envoyer un rechargement appel à une Réaction application Native en un appareil android:
adb shell input keyboard text "rr"