文章主要介绍apktool,jd-gui,dex2j的编译步骤,若有其他需要可直接滑到文章最后有自动化工具下载地址。自动化工具不需要代码操作,直接拖动反编译出源代码。
1.Apk反编译步骤
准备工具
apktool,jd-gui,dex2jar也可以从连接中下载链接: https://pan.baidu.com/s/1alC03YxFefyHlM7BFl6ELw 提取码: jsjs
(1) ApkTool拆包,得到AndroidManifest和res等资源文件
使用apktool.jar文件进行拆包,命令如下
java -jar apktool.jar d yourApkFile.apk
// 注意`apktool.jar`是刚才下载后的jar的名称,`d`参数表示decode
// 在这个命令后面还可以添加像`-o -s`之类的参数,例如
// java -jar apktool.jar d yourApkFile.apk -o destiantionDir -s
// 几个主要的参数设置方法及其含义:
-f 如果目标文件夹已存在,强制删除现有文件夹
-o 指定反编译的目标文件夹的名称(默认会将文件输出到以Apk文件名命名的文件夹中)
-s 保留classes.dex文件(默认会将dex文件解码成smali文件