Вставить текст в эмулятор Android - PullRequest
276 голосов
/ 02 августа 2010

Существует ли простой способ скопировать / вставить содержимое буфера обмена (рабочего стола) в EditView на эмуляторе Android?

(просто для облегчения разработки / тестирования)

Ответы [ 18 ]

285 голосов
/ 18 мая 2013

В терминале введите adb shell input text 'my string here. With some characters escaped like \$ that'

Обратите внимание, что альтернативный метод включения пробелов в текст - заменить %s на каждый space символ.

83 голосов
/ 08 марта 2017

С v25.3.x из эмулятора Android и системных образов эмулятора API x86 API уровня 19 (Android 4.4 - Kitkat) и выше вы можете просто копировать и вставлять с рабочего стола с помощью мыши или клавиатуры.

Эта функция была анонсирована с Android Studio 2.3

Copy and Paste with the Android Emulator

81 голосов
/ 01 сентября 2011

Я обычно отправляю текст, который хочу скопировать, как смс-сообщение через telnet, а затем копирую текст из смс-сообщения.Вот как:

Подключение через telnet:

  • Синтаксис: telnet localhost <port>
  • Пример: telnet localhost 5554

(5554 - порт по умолчанию. В строке заголовка эмулятора отображается используемый порт, поэтому вы можете увидеть, отличается ли он).

Отправить сообщение:

  • Синтаксис: sms send <senders phone number> <message>
  • Пример: sms send 1231231234 This is the message you want to send

(Вы можете просто указать номер телефона отправителя)

Это очень хорошо работает для ссылок, так как сообщение автоматически преобразуется в гиперссылку, которую можно щелкнуть, не копируя и не вставляя ее вбраузер.

Как только эмулятор получает сообщение, вы можете скопировать его и вставить в любое место.

14 голосов
/ 27 июля 2017

Не уверен, что это полезно, но, если вам требуется открыть длинный URL-адрес из браузера настольного компьютера в мобильном браузере, вы можете отправить SMS с этим URL-адресом и открыть его непосредственно из приложения сообщений.enter image description here

11 голосов
/ 02 ноября 2017

Просто скопируйте откуда угодно, нажмите и удерживайте текст редактирования телефона эмулятора, куда вы хотите, чтобы текст шел (вроде как вы нажимаете и удерживаете, чтобы вставить на реальный телефон), появится опция PASTE, затем PASTE.

6 голосов
/ 03 августа 2016

Если вы используете Android Studio на Mac, вам может потребоваться указать полный путь к исполняемому файлу adb.Чтобы найти этот путь, откройте:

Android Studio > Tools > Android > SDK Manager

Скопируйте путь в папку SDK.Исполняемый файл adb будет находиться в каталоге platform-tools.Для меня это был путь:

~/Library/Android/sdk/platform-tools/adb

Теперь вы можете запустить эту команду:

~/Library/Android/sdk/platform-tools/adb shell input text 'thetextyouwanttopaste'
5 голосов
/ 17 декабря 2010

может быть немного сложнее, но вы можете отправить смс на эмулятор с помощью элемента управления эмулятора. тогда вам не нужно перепечатывать весь текст, если он длиннее, и вы можете скопировать и вставить его в эмулятор.

другой способ: подключиться к эмулятору через "telnet localhost PORT" а затем использовать отправку аппаратного события для отправки события ввода текста в эмулятор (должен быть UTF-8). посмотрите на это

4 голосов
/ 12 августа 2017

В Linux это будет вставлять текст прямо из буфера обмена

adb shell input text "'$(xclip -selection c -o)'"

Также очень полезно создавать глобальные сочетания клавиш с помощью этой команды, например Ctrl + Shift + Super + V

3 голосов
/ 16 декабря 2018

Вы можете сделать это и без обходных путей.Просто нажмите и удерживайте немного в поле ввода, пока не появится уведомление о вставке, а затем нажмите на вставку.Вот и все!

2 голосов
/ 05 июня 2011

Вы смотрели на C2DM? chrome2phone и fox2phone могут отправлять ссылки и текст в буфер обмена и автоматически копировать его на телефон. Также попробуйте использовать оболочку adb. Есть служебная команда (/ system / bin / service), которая может использовать службы (буфер обмена служебными вызовами ...). Коды транзакций 1, 2 и 3 для getClipboardText, setClipboardText и hasClipboardText соответственно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...