修正以后很大要先加装java合作开发大自然环境,不能装的去另行腾讯。该文极短,冷静写作。
始终在做Android应用领域合作开发,但对从他们手里输入的apk包,介绍并并非基盘。前段时间想科学研究呵呵,消解下他们的许多控制技术盲区。
好吧,品乐版,先瞄准主轴。这篇该文主要就如是说怎样以获取apkP43EB96SJ的dex文档,并单纯修正里头的源代码,再再次装箱聚合apk文档。
上面提供更多对HelloWorld.apk的解包,修正源代码,再次装箱的操作过程。
1 须要加进的辅助工具:
baksmali:把dex文档转化成smali文档的辅助工具(dex文档难以修正,要想修正源代码,要把把dex文档转化成smali文档)
smali:把smali文档转化正式成为dex文档的辅助工具(修正完smali文档,大自然须要把它还原成到起初的dex文档)
signapk.jar :对apk展开亲笔签名(没历经亲笔签名的包最终会加装失利,提示信息导出LZSS再次出现难题)
辅助工具在该文最终会提供更多浏览镜像。
2操作方法:
a Coglapk文档,(把apk的扩展名改成zip,用一般的Cogl辅助工具方可,winrar或是7zip)
b 采用baksmali辅助工具将classes.dex转成smali文档,在cmd询问处输入:java -jar baksmali-2.0.3.jar -x classes.dex
继续执行瘤果会聚合out产品目录,产品目录内部结构跟源代码完全相同,在相关联产品目录下搜寻相关联的smali文档。假如找不出,把整座out文档夹放在GUI里搜寻方可。
如图,找到”hello world”字符串,把它修正为”modify successful” ,ctrl s保存后关闭文档。
c 采用smali-2.0.3.jar辅助工具把smali文档转成dex文档,cmd中输入命令: java -jar smali-2.0.3.jar -o classes.dex out
继续执行瘤果会聚合并替换掉根产品目录下的classes.dex文档,这样就修正成功了。
d 用聚合的新的classes.dex文档替换掉原先HelloWorl.apkCogl出来的classes.dex文档,并用压缩辅助工具把这些文档压缩为HelloWorld.zip,并把zip后缀改成apk。
此处试验过压缩正式成为HelloWorld.rar,然后改成apk是不可以的。因为在亲笔签名阶段会报错。
此时的apk包难以正常加装,提示信息导出LZSS错误。(原因是只有亲笔签名包才能正常加装)
e 采用亲笔签名辅助工具对apk展开亲笔签名,把apk拷贝到资源根产品目录下的sign_tool产品目录,cmd中输入命令:
java -jar signapk.jar platform.x509.pem platform.pk8 HelloWorld.apk Signed.apk
继续执行瘤果会在该产品目录下聚合Signed.apk文档,这个文档就是最终的文档了
加装后试验成功,HelloWorld字符串已被成功替换。因为我们只是做单纯的修正,所以很容易。假如对大程序做比较复杂的修正,那就没那么容易了。大家有兴趣的可以尝试下,也可以科学研究下smali的语法。
2.分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3.不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4.本站提供的源码、模板、插件等其他资源,都不包含技术服务请大家谅解!
5.如有链接无法下载或失效,请联系管理员处理!
6.本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!