成都网站建设设计

将想法与焦点和您一起共享

ADB版本过低导致ADBKeyboard中文输入乱码

今天,要调试adb shell input text ‘[input_text]’。
输入中文时,进程Killed了。原来adb input不支持中文。
因为ascii里没有中文,当然除了中文其它非ACSII的编码均会导致killed。

成都创新互联公司专业为企业提供宝山网站建设、宝山做网站、宝山网站设计、宝山网站制作等企业网站建设、网页设计与制作、宝山企业网站模板建站服务,十多年宝山做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

辗转到网上搜了下,有个https://github.com/senzhk/ADBKeyBoard 写的apk可通过监听广播将中文传入。
其实,就是通过unicode转码,来实现中文输入的需求。(只要到了app应用层,各种编码都是通途)

但是下载了adbKeyboard按说明输入了
adb shell am broadcast -a ADB_INPUT_TEXT --es msg '中‘
输出是 ֐,我晕了

ADBKeyboard中文乱码
冷静下来,思考应该是编码出了问题。
通过下载源码后,打印二进制值,才看到输出编码不一样。

后来更换adb后,居然通了。
下面是可以使用的adb版本
Android Debug Bridge version 1.0.39

输出乱码的adb版本
Android Debug Bridge version 1.0.32

建议大家在遇到类似问题时,如果可以编译打印log固然可以看清楚。
如果不行,先换adb版本试试


标题名称:ADB版本过低导致ADBKeyboard中文输入乱码
链接分享:http://chengdu.cdxwcx.cn/article/gcscps.html