2010-10-20 5 views

ответ

0

Вы можете увидеть, как это делается в talkmyphone.

Они используют Jabber, но это может быть полезно для вас.

+0

Я хочу, чтобы моя физическая клавиатура в основном использоваться как моя клавиатура для моего телефона, а не только SMS. –

+0

В прошлом я подключил клавиатуру bluetooth к моему телефону, но она была укоренена. Это не должно быть возможно на неперемещенном телефоне. – Macarse

+2

Клавиатуры Bluetooth работают на ненарушенных телефонах, без проблем – nmr

18

Хотя этот вопрос довольно старый, я хотел бы добавить этот ответ:

Вы можете использовать adb shell input keyevent KEYCODE соотв. adb shell input text "mytext". Список всех кодов клавиш можно найти here

+2

Вы также можете использовать текст ввода текста «adb shell», где текст может содержать '% s' для представления пробелов. – piojo

5

Чтобы избежать расширения/оценки параметра текста (т.е. для специальных символов, таких как «$» или «;»), вы можете обернуть их в кавычки, например:

adb shell "input text 'insert your text here'" 
+4

это не работает для меня. Следующее (как было предложено выше) работает с текстом ввода adb shell «insert% syour% stext% shere» – user985366

1

Как сказал Мануэль, вы можете использовать adb shell input text, но вам нужно заменить пробелы %s, а также кавычками. Вот простой Баш скрипт, чтобы сделать это очень просто:

#!/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 и сделать исполняемый файл. После этого вы можете вызвать скрипт без кавычек ...

atext Hello world! 

... если вам не нужно отправить кавычки, в этом случае вам необходимо поместить их между другой тип кавычек (это ограничение оболочки) :

atext "I'd" like it '"shaken, not stirred"' 

enter image description here