欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

apktool反编译apk,并重新打包

程序员文章站 2024-02-02 22:55:16
...

反编译的工具有很多,本文暂时只介绍apktool:

1.先下载apktool,下载地址:  https://ibotpeaches.github.io/Apktool/install/ (我当前下载的版本是apktool_2.4.1.jar);
2.修改文件名为"apktool.jar";
3.执行

java -jar apktool.jar 

 如果出现版本号,说明运行成功;

apktool反编译apk,并重新打包
4.将需要反编译的test.apk 文件放在和apktool.jar 同一层级;
5.cd到apktool.jar所在的目录,执行:

java -jar apktool.jar d <apk文件名称.apk>


举例:java -jar apktool.jar d test.apk ,这里执行完以后会在当前文件夹中生成一个对应的文件夹test

apktool反编译apk,并重新打包

6.生成的test文件夹就是apk反编译出来对应的文件,如果你想修改apk中的一些功能,请查看smali文件夹(这里修改需要了解smali语言);

apktool反编译apk,并重新打包

7.将修改保存之后test文件夹重新打包生成新的未签名的apk

java -jar apktool.jar b <文件夹名称> -o <新的apk全称>


举例: java -jar apktool.jar b test -o new_test.apk

apktool反编译apk,并重新打包

8.将未签名的apk签名,如果没有keystore证书,可以借助android studios生成一个;

jarsigner -verbose -tsa http://sha256timestamp.ws.symantec.com/sha256/timestamp -keystore <keystore路径> -storepass <密码> <需要签名的apk> <alias>

apktool反编译apk,并重新打包

apktool反编译apk,并重新打包

以上即完成了一次apk的反编译及重新打包,如有帮助,记得点赞三连~