Android反编译工具

Apktool

https://github.com/iBotPeaches/Apktool

可以反编译apk,也可以重新打包apk

下载地址:https://github.com/iBotPeaches/Apktool/releases
brew安装:brew install apktool
文档:https://ibotpeaches.github.io/Apktool/documentation
apktool d test.apk

dex2jar

https://github.com/pxb1988/dex2jar

可以将.dex文件反编译成.class文件并打包成jar

下载地址:https://github.com/pxb1988/dex2jar/releases
brew安装:brew install dex2jar
文档:https://github.com/pxb1988/dex2jar/wiki
d2j-dex2jar classes.dex

jd-gui

https://github.com/java-decompiler/jd-gui

可以查看.class文件,用来查看dex2jar反编译出的jar

下载地址:https://github.com/java-decompiler/jd-gui/releases
brew安装:brew install jd-gui

jadx-gui

https://github.com/skylot/jadx

可以直接浏览反编译后的apk

下载地址:https://github.com/skylot/jadx/releases

uber-apk-signer

https://github.com/patrickfav/uber-apk-signer

可以对apk签名,支持V1、V2

下载地址:https://github.com/patrickfav/uber-apk-signer/releases
文档:https://github.com/patrickfav/uber-apk-signer/blob/master/README.md
java -jar uber-apk-signer.jar -a [apk路径] --ks [keystore路径] --ksAlias [alias名称]

java2smali

https://github.com/ollide/intellij-java2smali

IntelliJ IDEA和Android Studio的插件,可以将Java和Kotlin文件编译为smali

下载地址:https://github.com/ollide/intellij-java2smali/releases