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

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


当前回答

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

其他回答

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

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

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

v25.3。Android Emulator & x86谷歌API Emulator系统图像API Level 19 (Android 4.4 - Kitkat)或更高,您可以简单地从您的桌面用鼠标或键盘复制和粘贴。

这一功能是在Android Studio 2.3中发布的

如果你在Mac上使用Android Studio,你可能需要提供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'

你看过C2DM吗?Chrome2phone和fox2phone可以发送链接和剪贴板文本,并自动复制到手机上。 另外,请尝试使用adb shell。有一个服务命令(/system/bin/service)可以使用服务(服务调用剪贴板…)getClipboardText、setClipboardText和hasClipboardText的事务代码分别为1、2和3。