APK 反编译记录

  1. 准备工作
    下载相应的工具软件:

1.1 配置好Java环境

1.2 下载最新版的apktool的jar包,并改为apktool.jar(如apktool_2.2.1.jar 改为 apktool.jar):
https://bitbucket.org/iBotPeaches/apktool/downloads
作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看

1.3 dex2jar-2.0.zip
作用:将apk反编译成java源码(classes.dex转化成jar文件)

1.4 jd-gui-windows-1.4.0.zip
作用:查看APK中classes.dex转化成出的jar文件,即源码文件

1.5 测试用的任意.apk安装包: app-debug.apk

完整的如下图所示:


APK 反编译记录_第1张图片
tools.png

2 反编译APK,可以查看资源文件和smali文件
2.1 打开cmd命令行,进入apktool.jar所在的目录,输入 java -jar apktool.jar,就可以看到相关的提示:

APK 反编译记录_第2张图片
apktool 提示.png

2.2 输入java -jar apktool.jar d app-debug.apk, 即可完成APK的反编译:

APK 反编译记录_第3张图片
apktool APK.png

2.3 进入app-debug目录,就可以看到反编译之后的文件:有manifest文件和res下的资源文件,还有smali文件(可理解为运行在JVM的语言):

APK 反编译记录_第4张图片
反编译之后的目录.png

3 Apk反编译得到Java源代码
3.1 解压dex2jar-2.0.zip和jd-gui-windows-1.4.0.zip

3.2 将 app-debug.apk中的classes.dex提取出来,并复制到dex2jar-2.0中:

APK 反编译记录_第5张图片
classes dex.png

3.3 在命令行下定位到dex2jar.bat所在目录,运行
d2j-dex2jar.bat classes.dex, 会生成对应的classes-dex2jar.jar

APK 反编译记录_第6张图片
dex2jar.png

3.4 打开jd-gui工具,然后将生成的classes-dex2jar.jar文件拖进去,即可看见反编译的文件:

APK 反编译记录_第7张图片
java.png

参考:
http://blog.csdn.net/vipzjyno1/article/details/21039349/
http://www.jianshu.com/p/e0661ff7d955

你可能感兴趣的:(APK 反编译记录)