使用adb shell将文本粘贴到Android仿真器剪贴板
我需要使用adb shell将文本粘贴到Android仿真器剪贴板中。 在安卓1.6和2.3.1上试用 我尝试使用adb shell命令:剪贴板:[android.text.iclipboard] “服务调用剪贴板”,其中服务代码分别为1、2和3,用于getClipboardText、setClipboardText和hasClipboardText使用adb shell将文本粘贴到Android仿真器剪贴板,android,emulation,clipboard,copy-paste,Android,Emulation,Clipboard,Copy Paste,我需要使用adb shell将文本粘贴到Android仿真器剪贴板中。 在安卓1.6和2.3.1上试用 我尝试使用adb shell命令:剪贴板:[android.text.iclipboard] “服务调用剪贴板”,其中服务代码分别为1、2和3,用于getClipboardText、setClipboardText和hasClipboardText service call clipboard 2 s16 thisisinsertedtext 似乎不起作用 当 显示剪贴板的内容: serv
service call clipboard 2 s16 thisisinsertedtext
似乎不起作用
当
显示剪贴板的内容:
service call clipboard 1
Result: Parcel(
0x00000000: 00000000 00000001 00000001 00000004 '................'
0x00000010: 00650074 00740078 00000000 't.e.x.t..... ')
请建议如何设置模拟器剪贴板的值 使用下面的命令
服务调用剪贴板2 i32 1 i32 18 s16此为插入文本
我认为第一个“i32 1”是剪贴板中有多少个元素。所以,就一个。
第二个是一段字符串。
上面写的命令显示
结果:包裹(00000000'..')
这通常意味着正常,没有错误
所以,我的问题是,有没有办法复制unicode字符串?
我是说,多字节字符集,比如韩语。
我试了很多方法,但都失败了
adb shell服务调用剪贴板2 i32 1 i32 1 s16“你好吗"
结果:包裹(00000000'..')
没关系
"你好吗“是汉字
第二个“i32 1”可以是任何整数,可能…请尝试以下操作:
i32:将整数INT写入发送包裹
s16:将UTF-16字符串STR写入发送包。看起来所有3个旧的方法都已弃用,因为API级别为11,因此它不适用于ICS
不清楚是否有可能使其在服务调用剪贴板中工作
static final int TRANSACTION_getClipboardText 1
static final int TRANSACTION_hasClipboardText 3
static final int TRANSACTION_setClipboardText 2
www.androidjavadoc.com/1.0_r1_src/constant values.html直接使用adb shell命令不起作用,因为API级别为11
这是一个解决方案。有一个开源python脚本,可以处理严重的限制:-它工作得很好,除了长时间的剪贴板文件上传,它的速度非常慢(200行文本文件可能需要20分钟) 我在GitHub上找到了一个名为clipper的应用程序的一些代码,该应用程序可以使用adb通过广播目的填充剪贴板。我将其增强为从文件读取,增强的代码如下: 构建应用程序,安装在设备上。现在我可以使用ADB命令通过文件填充剪贴板。就像我需要上传的3页脚本的符咒一样工作。基本上你可以这样使用:
adb push clipboard_content_file.txt /sdcard/clipboard_content_file.txt
adb shell am broadcast -a clipper.setfile -e filepath \'/sdcard/clipboard_content_file.txt\'
AdbPaste要快得多,不管剪贴板内容的大小,它只需要一两秒钟。我如何才能粘贴到剪贴板4 worlds?这是插入的文本我想你会将字符串放在引号中。此命令行适用于我的姜饼模拟器,但不适用于ICS。返回的包裹中的数据显示“未知包”。第一个i32是
0
以清除剪贴板,设置为非零。代码使用'if((0!=data.readInt())…`。其他i32对文本中的跨距(即粗体)进行编码。请参阅com.android.server.ClipboardService类。另请参阅
adb push clipboard_content_file.txt /sdcard/clipboard_content_file.txt
adb shell am broadcast -a clipper.setfile -e filepath \'/sdcard/clipboard_content_file.txt\'