相关工具准备
- apktool:用于反编译apk得到classes.dex、资源、布局等文件
- dex2jar:用来将classes.dex文件转换为jar文件
- jd-gui:用来预览jar文件包含的java文件代码
apktool安装
- 官网:apktool.org/ 官网有两种安装方式:手动安装和homebrew安装。
- 推荐homebrew安装apktool
- brew install apktool
- apktool命令 反编译 apk并提取classes.dex文件
# 加上 -s 表示禁止将 dex 文件解码成 smali 文件;
$ apktool d -s xxx.apk
dex2jar安装
- 同样推荐homebrew安装,方便使用和管理 formulae.brew.sh/formula/dex…
- brew install dex2jar
# 执行d2j-dex2jar 将对应dex文件编译为jar文件;
$ d2j-dex2jar classes.dex
jd-gui安装
- 下载并安装 JD-GUI 软件工具 (下载地址:java-decompiler.github.io/);
- 打开 JD-GUI 软件,将需要查看的 jar 文件拖进去即可查看;
- 安装时可能遇到问题:
- 解决步骤
- 右键JD-GUI图标,点击显示包内容
- 修改 universalJavaApplicationStub.sh文件,该文件路径为./Contents/MacOS/universalJavaApplicationStub.sh
- 注释掉235和237行,在238行增加 JAVACMD="你的javapath"
- 获取java路径的简单方法 在终端执行: which java
- 重启JD-GUI即可正常打开使用。
- 右键将jar文件拖入框内即可查看。