浏览文章
文章信息
一、解包
cd 到apktool所在目录:
java -jar .\apktool_2.3.3.jar d .\<apk名>.apk -o <输出目录名>
例如:D:\apktool目录下(目录内文件列表:apktool_2.3.3.jar,jxqy.apk,signapk.jar,platform.x509.pem platform.pk8)
D:\apktool>java -jar .\apktool_2.3.3.jar d .\jxqy.apk -o jxqy
注意: .\<apk名>.apk 是apk所在位置
二、编辑(可选)
如果要编辑classes.dex文件则需要转码
转换源码......
使用baksmali工具将classes.dex转为smali文件,在cmd窗口输入:java -jar 绝对路径\baksmali-2.0.3.jar -x classes.dex
执行完后会生成out目录,目录结构跟源码相同,在对应目录下查找对应的smali文件。如果找不到,把整个out文件夹放到编辑器里搜索即可。
编辑......
coding
编译源码......
使用smali-2.0.3.jar工具把smali文件转为dex文件,cmd中输入命令: java -jar 绝对路径\smali-2.0.3.jar -o classes.dex out
三、打包
java -jar .\apktool_2.3.3.jar b .\<输出目录名>\
例如:D:\apktool目录下(目录内文件列表:apktool_2.3.3.jar,jxqy.apk,signapk.jar,platform.x509.pem platform.pk8)
D:\apktool>java -jar .\apktool_2.3.3.jar b .\jxqy
注意:这里的<输出目录名>是解包的目录名
认真看这里:在 <输出目录名>\dist下将看到打包成功的apk包,拷贝出来,替换掉原来的jxqy.apk(当然,入宫你想保留原来的apk文件,就把旧文件,重命名就可以了)
四、签名
使用签名工具对apk进行签名,把apk拷贝到资源根目录下的sign_tool目录,cmd中输入命令:
java -jar .\signapk.jar platform.x509.pem platform.pk8 <apk名>.apk <apk名1.0.1>.apk
执行完后会在该目录下生成<apk名1.0.1>.apk文件,这个文件就是最终的文件了
例如:D:\apktool目录下(目录内文件列表:apktool_2.3.3.jar,jxqy.apk,signapk.jar,platform.x509.pem platform.pk8)
D:\apktool>java -jar .\signapk.jar platform.x509.pem platform.pk8 jxqy.apk jxqy_signed.apkjxqy_signed.apk :已经签名的apk