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

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


当前回答

如果你在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'

其他回答

我通常通过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替换字符串致敬。

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

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

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

使用Visual Studio模拟器,这是我的方法。

首先堆一个虚拟sd卡:

使用模拟器的附加工具(小>>图标),然后转到 SD卡选项卡。 选择计算机上要与 虚拟SD卡。 从SD卡拉,这将在选定的文件夹上创建一个文件夹结构。

设置一个文本文件来传输文本:

使用谷歌Play Store安装您选择的文本编辑器 在您计算机上之前创建的虚拟sd卡目录的下载目录中创建一个包含您的文本的文本文件。

每当我需要向剪贴板发送文本时。

编辑上面创建的文本文件。 打开“附加工具”(小>>图标),选择“推到SD卡”。 在我安装的文本编辑器中打开文本文件,并将文本复制到剪贴板中。(打开对话框时按住鼠标,选择全选,然后点击复制图标)

一旦设置好,就很容易重复。相同的方法将适用于其他模拟器,您可能需要使用不同的方法将您的文本文件推到模拟器。

只要从任何地方复制,点击并按住模拟器手机的编辑文本你想要的文本(有点像你会按下并按住粘贴在实际的电话),粘贴选项将出现,然后粘贴。