Android 应用反编译方法

Android 应用反编译方法

所需工具

apktool 、dex2jar、jd-gui

工具介绍

  • apktool
    获取资源文件,可以查看图片以及xml布局

  • dex2jar
    获取java源码,也就是将 classes.dex 转化成jar文件

  • jd-gui
    查看源码,即查看通过 dex2jar 得到的 jar 文件

资源下载链接:https://download.csdn.net/download/qq_39821816/10819640
压缩包中包含所需三个工具,可直接解压使用
Android 应用反编译方法_第1张图片

获取资源文件

定位到apktool.jar所在的文件目录,同时将源apk也放在这个目录中。

例如:源apk为 test.apk,对该apk进行反编译:命令

Java -jar apktool.jar d -f -s test.apk -o test

Android 应用反编译方法_第2张图片
执行完毕后会在同级目录生成一个 test 文件夹,可查看资源文件
Android 应用反编译方法_第3张图片

获取源码

将要反编译的APK后缀名改为 .rar或则 .zip,解压

得到其中的 classes.dex 文件(是java文件编译再通过dex工具打包而成的)

将获取到的 classes.dex 放到之前解压出来的工具 dex2jar-0.0.9.15 文件夹内

Android 应用反编译方法_第4张图片
在命令行下定位到 dex2jar.bat 所在目录,命令

d2j-dex2jar.bat   classes.dex   

Android 应用反编译方法_第5张图片
(或者有一种简单的方式,直接将 classes.dex 文件拖到 dex2jar.bat ,也可以得到 jar文件)

在该目录下会生成一个classes_dex2jar.jar的文件
Android 应用反编译方法_第6张图片
classes_dex2jar.jar 即我们需要的源码文件
可以使用工具 jd-gui 打开,查看源码内容(代码一般都会被混淆,以a,b,c…方式命名)
Android 应用反编译方法_第7张图片
jd-gui-1.4.0.jar 打开方式 右键—>打开方式—> Java™ Platform SE binary
Android 应用反编译方法_第8张图片

你可能感兴趣的:(Android)