Вставить текст в Android эмулятор

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

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

Ответ 1

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

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

Copy and Paste with the Android Emulator

Ответ 2

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

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

Ответ 3

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

Подключение через 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

(Вы можете просто составить номер телефона отправителей)

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

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

Ответ 4

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

enter image description here

Ответ 5

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

Ответ 6

Если вы используете 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'

Ответ 7

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

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

Ответ 8

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

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

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

Ответ 9

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

Ответ 10

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

Ответ 11

Я устал от этой проблемы, поэтому я просто применил этот псевдоним:

alias ap="pbpaste | xargs adb shell input text"

Затем, когда вы открываете новое окно терминала, ввод "ap" вставляет все, что находится в вашем буфере обмена, в активное текстовое поле, которое было выбрано эмулятором.

Настройка

Просто добавьте это в свой профиль (для большинства пользователей, которые ~/.bash_profile для пользователей zsh, которые ~/.zshrc), чтобы сделать псевдоним доступным везде. В качестве альтернативы, если вы являетесь пользователем bash (по умолчанию для MacOS), вы можете запустить следующую команду в терминале, чтобы настроить его для вас:

echo "alias ap='pbpaste | xargs adb shell input text'" >> ~/.bash_profile && source ~/.bash_profile

Ответ 12

Использование эмулятора Visual Studio, здесь мой метод.

Первый курган - виртуальная SD-карта:

  • Используйте дополнительные инструменты (маленький → значок) для эмулятора и перейдите к вкладку SD Card.
  • Выберите папку на компьютере для синхронизации с виртуальная SD-карта.
  • Потяните с SD-карты, которая создаст структуру папок в выбранной папке.

Настройте текстовый файл для передачи текста:

  • Используйте Google Play Store для установки текстового редактора по вашему выбору.
  • Создайте текстовый файл, содержащий текст на вашем компьютере, в каталоге загрузки каталога виртуальной SD-карты, который вы создали ранее.

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

  • Отредактируйте текстовый файл, созданный выше.
  • Перейдите в раздел "Дополнительные инструменты" (маленький значок → ) и выберите "Нажать на SD-карту".
  • Откройте текстовый файл в текстовом редакторе, который я установил, и скопируйте текст на плату клипа. (Удерживая нажатой клавишу мыши, когда откроется диалог, выберите все, а затем щелкните значок копирования)

После настройки его довольно легко повторить. Тот же метод применим и к другим эмуляторам, вам может понадобиться использовать другой метод для подталкивания вашего текстового файла к эмулятору.

Ответ 13

(преобразование обсуждения комментариев для ответа)

только для окон: https://github.com/gcb/AdbPaste

написал это через пару часов, чтобы обойти эту проблему. Я вернусь на 100% linux, поэтому не стесняйтесь присоединяться к нему в качестве вкладчика или сопровождающего!

Ответ 14

Команда записи: устройства adb (он будет отображать подключенное устройство) Выберите "Текстовое поле", в котором вы хотите написать текст. Команда записи: текст ввода оболочки adb "Yourtext" (убедитесь, что для запуска этой команды подключено только одно устройство) Готово!

Ответ 15

Сделано это приложение Windows, которое позволяет пользователям копировать вставку в эмуляторы Android или подключенные устройства из визуального интерфейса. https://github.com/Florin-Birgu/Android-Copy-Paste

введите описание изображения здесь

Ответ 16

Я пришел сюда, чтобы найти решение той же проблемы, и в итоге написал приложение для Android, чтобы решить эту проблему. Вы можете скачать его на http://www.box.net/shared/6203bn441bfltkimajmk. Просто укажите URL-адрес в меню "Настройки", чтобы указать на место, где вы можете легко изменить ответ в Интернете. Первая строка веб-ответа будет скопирована в буфер обмена эмулятора для вас. Более подробную информацию можно найти на http://agilesc.barryku.com/?p=255.

Ответ 17

Для Mac и Linux попробуйте эту функцию в вашем файле aliases_bash (находящемся в /etc/aliases _bash для пользователей Mac, обязательно используйте sudo vim/etc/aliases_bash)

function adbtx {
  userinput="$(sed 's/ /%s/g' <<< $1)"
  adb shell input text "${userinput}";
}
export -f adbtx

Затем в командной строке введите:

adbtx 'Your text to emulator input'

' Ваш текст для ввода эмулятора' будет введен в текстовое поле эмулятора.

Престижность для Элиота для его строки подстановки для sed.

Ответ 18

Только для уровня API> = 24

Скопируйте любой текст с вашего локального компьютера, а затем просто запустите эту команду

adb shell input keyevent 279

Убедитесь, что в настройках эмулятора Android включены параметры " Enable Clipboard Sharing к Enable Clipboard Sharing