如何对APK进行反编译查看相关代码

如何对APK进行反编译查看相关代码

反编译只能用于一般的没有进行过加固的APK,如果是加固过的APK需要进行脱壳等处理,这种博主暂时也还没研究过。

对apk进行反编译并查看代码需要两款工具:dex2jar 和 jd-gui 。我已经把两款工具上传到github上,可以通过以下链接下载:https://github.com/HaiTaoFeng/Tool

下面介绍下这两款工具的作用:
dex2jar 是把dex文件转为jar文件;
jd-gui 是把jar文件转为Java代码。

把两个工具下载回来并解压,dex2jar解压之后如下图:
如何对APK进行反编译查看相关代码_第1张图片
jd-gui解压之后,如下图:
如何对APK进行反编译查看相关代码_第2张图片
1、把需要进行反编译的APK后缀名.apk修改为.zip,然后解压。解压之后会有以下文件,而程序代码一般是在classes.dex文件中:
如何对APK进行反编译查看相关代码_第3张图片
2、把classes.dex文件放到dex2jar解压之后目录下:

如何对APK进行反编译查看相关代码_第4张图片
3、打开cmd命令,进入该目录下,输入命令 d2j-dex2jar classes.dex ,执行成功后会在该目录下生成文件classes-dex2jar.jar ,结果如图:
如何对APK进行反编译查看相关代码_第5张图片

如何对APK进行反编译查看相关代码_第6张图片
4、进入jd-gui工具目录下,打开jd-gui.exe程序,把文件classes-dex2jar.jar拖到该程序,将jar文件转换为Java代码:
如何对APK进行反编译查看相关代码_第7张图片
执行结果如下,可以看到该apk中Activity的代码:
如何对APK进行反编译查看相关代码_第8张图片
这样就说明我们反编译成功了

你可能感兴趣的:(Android开发)