##反编译一个APK文件所需的步骤
###没有做过代码混淆的APK效果还行,混淆过的就看不到源码了
所用工具
- apktools
- dex2jar
- jdgui
所需步骤
-
apktools 来反编译xml文件,比如layout 等
- 这个方式比较简单: https://ibotpeaches.github.io/Apktool/install/
- 下面的方式复杂一点:
- apktools 下载地址 https://ibotpeaches.github.io/Apktool/install/
- apktools 使用命令:java -jar apktool_2.2.2.jar d <你的apk文件>.apk
- 运行完成之后,会在apk文件的同一级目录下有一个对应的文件夹,里面的res是反编译过的
-
dex2jar 来反编译java code,就是src下的文件
- dex2jar 下载地址 https://sourceforge.net/projects/dex2jar/
- dex2jar 使用命令:
- 打开命令行,先cd 到dex2jar的解压目录
- 运行: d2j-dex2jar.bat …/APK_dex/classes.dex, 粗体部分是你的dex文件的相对路径
- 运行完成后,看到的结果是得到一个 classes-dex2jar.jar,在d2j-dex2jar.bat 那个目录下
-
用jdgui来看dex的文件。
- 下载地址: http://jd.benow.ca/
- 下载后直接打开 classes-dex2jar.jar 就可以看源代码了。