1.下载apktool
APKtool官网:https://ibotpeaches.github.io/Apktool/
APKtool下载:https://bitbucket.org/iBotPeaches/apktool/downloads/
APKtool源码:https://github.com/iBotPeaches/Apktool
2.使用apktool.jar反编译解包
将需要编译的apk和apktool.jar放到同一个文件夹下
在此目录终端下,输入以下命令:
# test.apk: 表示反编译的apk
# out: 表示反编译后资源存放目录
java -jar apktool.jar d -f test.apk -o out
3.在out文件夹中找到需要修改的文件并修改保存
4.重新编译成apk
# modify.apk: 新生成的apk文件(未签名)
# out: 表示将out文件夹编译成apk
java -jar apktool.jar b -o modify.apk out
5.对apk签名
使用 jarsigner 工具进行签名,jarsigner是JDK提供的对jar包签名通用工具(位于jdk/bin/目录)
将签名用的签名文件 xxx.keystore或xxx.jks 放入当前文件夹
# test.keystore: 给apk签名用的签名文件
# 123456:签名文件的密码
# modify_signed.apk: 签名后生成的apk文件
# modify.apk: 指定需要签名的apk文件
# testalias: 签名文件的别名(可自定义一个)
jarsigner -verbose -keystore test.keystore -storepass 123456 -signedjar modify_signed.apk modify.apk testalias