44 votes

Coller du texte sur le nouvel émulateur Android

J'utilise l'émulateur fourni avec Android Studio et j'ai besoin de transférer du texte entre mon ordinateur OSX Yosemite et une application dans l'émulateur.

J'ai démarré mon émulateur avec emulator -avd Nexus_6_API_23

J'ai essayé de faire un clic long sur Command-V, mais ça ne colle pas.

Je vois. Comment copier/copier des caractères multi-octets sur l'émulateur Android ? et quelques autres comme Coller du texte sur l'émulateur Android mais ils semblent liés à adb et non le nouveau emulator .

Des idées, s'il vous plaît ?

0 votes

0 votes

Regardez ça : stackoverflow.com/a/42678005/207552 Avec la bonne version de l'émulateur, cela fonctionne par défaut.

82voto

Parth Points 881

Suivez ces étapes pour écrire le texte copié :

  1. Terminal ouvert

  2. Commande d'écriture : adb devices (la liste des appareils actuellement connectés s'affiche)

  3. Sélectionnez la zone de texte où vous voulez écrire du texte

  4. Commande d'écriture : adb shell input text 'Yourtext' (assurez-vous qu'un seul appareil est connecté pour exécuter cette commande et que vous pouvez également utiliser Citations uniques )

  5. C'est fait !

5 votes

Excellente réponse, mais pour utiliser #2, il faut l'utiliser avec le paramètre -s si vous avez plusieurs appareils. par exemple adb -s {device_id} shell input text "blahblah" J'ai également constaté que, pour une raison quelconque, si votre texte contient '&', l'interpréteur de commandes essaiera de l'exécuter, mais échouera.

0 votes

J'essayais de copier-coller le mot de passe de mon compte dans l'émulateur. Je suis sûr que cette solution fonctionne dans la plupart des cas, mais comme elle nécessite des guillemets simples, dans mon cas la commande est confuse et meurt tragiquement avec /system/bin/sh: no closing quote à cause de caractères spéciaux dans mon pwd -_-

5voto

Ahmad Aghazadeh Points 8690

Dans un terminal, tapez

adb shell input text 'my string here.'

Cela ne fonctionne que si vous avez un seul émulateur ou un seul appareil connecté à votre PC.

0voto

PWA Points 1

J'ai eu le même problème - je dois copier du texte de macOS vers un dispositif virtuel Android (AVD) dans Android Studio. J'ai essayé les solutions sms ou telnet, elles ont fonctionné mais pas vraiment bien pour une grande somme de texte (par exemple une page entière de texte avec des espaces, des sauts de ligne et toutes sortes de caractères spéciaux).

Merci à quelqu'un qui a créé un script Apple pour forcer la saisie du mot de passe dans le champ mot de passe lors de l'ouverture d'un volume crypté. Cet étonnant script a également résolu ce problème ! Et il est plus direct d'utiliser ce script pour copier et coller du Mac vers un AVD.

Je fais en sorte que l'icône Apple script reste toujours en haut de l'écran (la barre d'état) de sorte que chaque fois que j'ai besoin de copier et de coller, il suffit d'un clic.

Voici une copie du script (celui qui l'a créé, merci encore !)

------

set numbers_key_codes to {82, 83, 84, 85, 86, 87, 88, 89, 91, 92}

définir l'entrée pour faire shell script"pbpaste"

si (l'entrée n'est pas une valeur manquante) alors

tell application "System Events"

    repeat with char in the characters of input

        try

            key code numbers_key_codes's item (char + 1)

        on error

            keystroke char

        end try

    end repeat

end tell

fin si

------

Il suffit de copier le texte source, de cliquer sur l'emplacement cible dans l'AVD, puis d'activer le script en cliquant sur l'icône script, voilà, tout sera collé comme une frappe automatique !

Sachez que si vous copiez et collez un grand nombre de caractères, le script script peut prendre quelques secondes pour terminer la "saisie".

0voto

HknCore Points 107

Il existe un outil permettant d'exécuter une commande dans la console adb pour coller lorsque l'on tape sur ctrl + v. Essayez-le :)

https://github.com/HknCore/AndroidPaster/releases/tag/1.0.0

-1voto

MT-Wizard Points 150

Cette fonctionnalité n'est tout simplement pas mise en œuvre. Vous pouvez créer une demande de fonctionnalité à partir de la page d'aide de l'émulateur.

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