有一个简单的方法复制/粘贴(桌面的)剪贴板内容到EditView上的安卓模拟器?

(只是为了简化开发/测试)


当前回答

仅适用于API级别>= 24

从本地机器复制任何文本,然后简单地运行这个命令

adb shell input keyevent 279

确保在Android模拟器设置中启用剪贴板共享选项

其他回答

对于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'

'Your text to emulator input'将在emulator text字段中输入。

向Eliot的sed替换字符串致敬。

在终端中,输入adb shell input text 'my string here。使用一些转义字符,比如\$ that'

注意,在文本中包含空格的另一种方法是将每个空格字符替换为%s。

点击鼠标左键2 - 3秒,就会出现粘贴按钮。单击粘贴按钮,测试将顺利复制。

也许有点棘手,但你可以通过使用模拟器控件发送SMS到模拟器。然后,如果文本较长,则不必重新键入所有文本,并且可以在模拟器中复制粘贴它。

另一种方法:通过“telnet localhost PORT”连接到模拟器 然后使用硬件事件发送向模拟器发送一个文本输入事件(需要UTF-8)。看看这个

在Linux上,这将直接从剪贴板粘贴文本

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

用这个命令创建全局键盘短键也很有用,例如Ctrl+Shift+Super+V