对 Android APK 安装包进行反编译并修改再打包

1、确认系统中已安装 JRE、JDK(需要 1.8 以上版本:https://www.oracle.com/cn/java/technologies/javase-downloads.html

检查命令:java -version

2、JRE、JDK 的路径已配置在系统环境变量 PATH 中:

如:C:Program FilesJavajdk1.8.0_181jrein(keytool 工具在此)

C:Program FilesJavajdk1.8.0_181in(jarsigner 工具在此)

3、获取 apktool 工具,按说明进行下载安装:https://ibotpeaches.github.io/Apktool/install/

下载后说放到 Windows 目录下,其实也可以自己建一个文件夹,将文件夹路径放到环境变量中,就是为了执行方便,一样的效果。

4、反编译 base.apk:

命令:apktool d base.apk

执行后本地会生成同名文件夹 base,在 base 文件夹下就是各种源文件(如:smali 文件),可以进行修改、保存。

搜索文件内容可使用工具 SearchMyFiles:https://www.nirsoft.net/utils/search_my_files.html

5、重新打包为 base_new.apk:

命令:apktool b base -o base_new.apk

6、创建签名文件 base.keystore(已有签名文件的可跳过):

keytool -genkey -alias base.keystore -keyalg RSA -validity 40000 –keystore base.keystore

执行后会提示输入一系列签名信息,根据情况自己输入就可以了。

7、使用 base.keystore 签名文件对 base_new.apk 进行签名,保存为 base_new_signed.apk 文件:

jarsigner -verbose -keystore base.keystore -signedjar base_new_signed.apk base_new.apk base.keystore

以上步骤文件名可根据实际情况进行修改,保持一致即可,注意更换签名后,是不能覆盖安装的,只能卸载重新安装。

 

转自:https://blog.csdn.net/bricky/article/details/103190809

原文地址:https://www.cnblogs.com/xwgli/p/13720165.html