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

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


当前回答

(将评论讨论转换为回答)

唯一解决方案在windows: https://github.com/gcb/AdbPaste

为了解决这个问题,我花了几个小时写了它。我现在回到100%的linux,所以请随意加入它作为贡献者或维护者!

其他回答

我通常通过telnet将我想复制的文本作为短信发送,然后从短信中复制文本。方法如下:

通过telnet连接:

telnet localhost <端口> 例如:telnet localhost 5554

(5554为默认端口。模拟器的标题栏显示了正在使用的端口,因此您可以看到它是否不同)。

发送信息:

文本格式:sms send <发件人电话号码> <消息> 示例:sms send 1231231234要发送的消息

(你可以编一个寄件人的电话号码)

这对于链接非常有效,因为消息会自动转换为一个超链接,你可以单击,而不必复制/粘贴到浏览器中。

一旦模拟器接收到消息,您就可以复制它并将其粘贴到任何您喜欢的地方。

对于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替换字符串致敬。

实际上,在我的情况下,重新启动MacBook并使用这个命令运行模拟器解决了这个问题:

 emulator -avd Pixel_5_API_31  -wipe-data

请记住,您应该使用您的模拟器设备,查看模拟器列表使用以下命令:

emulator -list-avds 

你也可以不使用变通方法。只需点击并按住输入框,直到粘贴通知出现,然后点击粘贴。就是这样!

我来这里是为了寻找同样问题的解决方案,最后写了一个Android应用程序来解决这个问题。你可以在http://www.box.net/shared/6203bn441bfltkimajmk上下载。只需通过首选项菜单提供一个URL,指向一个可以轻松更改Web响应的地方。Web响应的第一行将为您复制到模拟器的剪贴板。更多详情请访问http://agilesc.barryku.com/?p=255。