Можете ли вы использовать ADB для прямого ввода на устройство Android с компьютера? Если да, то как?
Ввод на Android-устройстве прямо с компьютера?
Ответ 1
Хотя этот вопрос довольно старый, я бы хотел добавить этот ответ:
Вы можете использовать adb shell input keyevent KEYCODE
соответственно. adb shell input text "mytext"
. Список всех кодов ключей можно найти здесь
Ответ 2
Чтобы избежать расширения/оценки текстового параметра (т.е. для специальных символов, таких как "$" или ";" ), вы можете заключить их в кавычки следующим образом:
adb shell "input text 'insert your text here'"
Ответ 3
Как сказал Мануэль, вы можете использовать adb shell input text
, но вам нужно заменить пробелы на %s
, а также кавычки дескриптора. Вот простой bash script, чтобы сделать это очень просто:
#!/bin/bash
text=$(printf '%s%%s' ${@}) # concatenate and replace spaces with %s
text=${text%%%s} # remove the trailing %s
text=${text//\'/\\\'} # escape single quotes
text=${text//\"/\\\"} # escape double quotes
# echo "[$text]" # debugging
adb shell input text "$text"
Сохранить как, скажем, atext
и сделать исполняемый файл. Затем вы можете вызывать script без кавычек...
atext Hello world!
... если вам не нужно отправлять кавычки, и в этом случае вам нужно поместить их между кавычками другого типа (это ограничение оболочки):
atext "I'd" like it '"shaken, not stirred"'
Ответ 4
Вы можете увидеть, как это делается в talkmyphone.
Они используют Jabber
, но это может быть полезно для вас.