Mac反编译安卓APK

发布时间 2023-06-28 17:32:38作者: 为敢技术

热烈欢迎,请直接点击!!!

进入博主App Store主页,下载使用各个作品!!!

注:博主将坚持每月上线一个新app!!

一、方法一:
1、安装jdk8
brew install --cask adoptopenjdk8
2、下载库,编译安装
git clone https://github.com/skylot/jadx.git
cd jadx
./gradlew dist
3、然后将build/jadx/bin加入到环境变量。访达打开:【~/.bash_profile】
export JADX_HOME=/Users/jadx/build/jadx #以自己的路径为准
export JADX_BIN=$JADX_HOME/bin
export PATH=$PATH:$JADX_BIN
4、开始反编译等完毕后,可以开始最简单最常用的用法。
把apk改成zip,解压zip获取class.dex文件,将classes.dex文件放到jadx目录下
cd build/jadx/
jadx -d out classes.dex # 反编译后放入out文件夹下(如果out不存在它会自动创建)
#or cd jadx/build/jadx/bin/jadx
jadx-gui classes.dex # 会反编译,并且使用gui打开
5、使用jadx
jadx也有GUI,直接双击bin目录下的jadx-gui,然后选择要反编译的apk即可,运行效果如下。

jadx_gui如果要保存源码,选择File->Save ALL即可保存文件,然后就可以导入Android Studio等IDE中。

6、我们也可以直接使用命令行反编译apk文件:
jadx -d out classes.dex #直接输出.java文件到out目录
jadx-gui classes.dex #使用gui打开
7、在反编译较大的apk时,如果遇到jadx-jui卡顿和假死的情况,可适当优化jvm相关参数, 我直接在~/.bash_profile中加上了如下语句:
export JVM_ARGS="-Xmx4096m -XX:MaxPermSize=1024m"

 

二、方法二:
1. 使用brew安装 : 
brew install jadx (输入完命令,等待安装完毕)
2. 查看jadx的安装位置 : brew list jadx
输出结果如下:
- /opt/homebrew/Cellar/jadx/bin/jadx
- /opt/homebrew/Cellar/jadx/bin/jadx-gui
3.配置相应的环境变量
在.bash_profile文件中加入JADX_HOME环境变量并保存
# jadx-gui
JADX_HOME=/opt/homebrew/Cellar/jadx/
PATH=$PATH:${JADX_HOME}/bin
4.在shell中直接输入jadx-gui启动jadx的图形化界面
三、注意:许多知名一点的App的apk文件在用jadx反编译的时候,会经常提示你运行内存不足导致某些内容没反编译出来.jadx一般初始默认的内存是4G,因此需要我们去手动修改一下他的默认内存大小.
Mac系统
注意:Mac直接修改jadx.bat或者jadx-gui.bat文件会发现怎么都不好使.这是因为.bat在Windows上是支持的,但是在Mac上不支持此文件.因此我们需要直接修改jadx-gui的二进制文件.
1.在终端用vim打开你的jadx-gui.(例如我的jadx-gui路径是 /Users/username/jadx-decompiler/bin/jadx-gui )
2.按e选择edit anyway模式,按i进入insert模式
3.向下移动光标找到图中所示位置,新增 DEFAULT_JVM_OPTS=’"-Xms1024M" “-Xmx8g”’ 切记两边单引号不要忘记!!!
4.输入完成之后按esc键,退出insert模式
5.输入冒号:进入底部命令行模式
6.输入wq保存退出
7重新启动jadx-gui完成默认内存的修改