首页
社区
课程
招聘
[原创]修改adb源码,支持中文以及特殊字符
发表于: 2013-10-12 13:23 17649

[原创]修改adb源码,支持中文以及特殊字符

2013-10-12 13:23
17649
标 题: 【原创】修改adb源码,支持中文以及特殊字符
作 者: 蟑螂一号  
时 间: 2013-10-12,13:44:03
       目前第三方手机检测软件越来越多,例如91手机助手、豌豆荚、360手机助手等等。手机助手软件连接到手机设备,adb程序必不可少。目前,第三方手机检测软件都内置了自定义的adb程序。
       在windows平台上,adb命令中如果含义中文字符或者特殊字符时,执行会出错。网上的解决方法一般都是修改cmd界面的编码,但是很多时候尝试都失败。
       我在工作中也遇到adb遇到中文以及特殊字符无法执行的情况。比如adb安装apk,如果安装路径中有中文路径字符或者apk名字含义中文等,那么安装会提示找不到文件。当然,这个问题好解决,在程序中通过代码处理,把路径或者apk名称换为英文即可解决。但在下面这种需求情况,那就难以解决。
       手机第三方检测一般都会获取sdcard存储的apk文件,获取存储卡apk文件有两种途径。1.安装客户端到手机,然后扫描sdcard中的apk然后通过socket传输到pc端。2.直接通过adb pull命令提取。使用adb pull命令提取,只需要apk在sdcard中的路径即可。但使用adb pull不得不面对apk路径或者apk名称存在中文或者特殊字符,例如括号、空格等。在此情况下,使用adb pull是无法提取apk出来。
       经过研究,并在项目中验证通过的解决方法:
       1.adb pull命令中的参数使用base64编码。
       2.修改adb源码,在pull处理函数参数中对传入的参数base 64解码。

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 113
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
一堆废话
2013-10-18 10:38
0
雪    币: 2
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
这个是原创吗?貌似记得有人发过吧
2013-10-19 14:05
0
雪    币: 213
活跃值: (70)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
确实是一堆废话
你倒是把编译好的放出来呀
2013-10-23 16:04
0
雪    币: 223
活跃值: (516)
能力值: ( LV13,RANK:520 )
在线值:
发帖
回帖
粉丝
5
直接 chcp 不行?
2013-10-28 23:30
0
雪    币: 259
活跃值: (3623)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
6
不行哦,只有改adb源码,自己编译一个出来。
2013-10-29 09:07
0
雪    币: 16
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
好好好好
2013-10-29 09:38
0
雪    币: 223
活跃值: (516)
能力值: ( LV13,RANK:520 )
在线值:
发帖
回帖
粉丝
8
我遇到过中文出错的情况,
所以我一般写console程序,都喜欢加句 system("chcp 936");
这样就能解决掉所有问题了.
adb 应该也一样的.
2013-10-29 11:28
0
游客
登录 | 注册 方可回帖
返回
//