-
准备工作
下载相应的工具软件:
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
完整的如下图所示:
2 反编译APK,可以查看资源文件和smali文件
2.1 打开cmd命令行,进入apktool.jar所在的目录,输入 java -jar apktool.jar,就可以看到相关的提示:
2.2 输入java -jar apktool.jar d app-debug.apk, 即可完成APK的反编译:
2.3 进入app-debug目录,就可以看到反编译之后的文件:有manifest文件和res下的资源文件,还有smali文件(可理解为运行在JVM的语言):
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中:
3.3 在命令行下定位到dex2jar.bat所在目录,运行
d2j-dex2jar.bat classes.dex, 会生成对应的classes-dex2jar.jar
3.4 打开jd-gui工具,然后将生成的classes-dex2jar.jar文件拖进去,即可看见反编译的文件:
参考:
http://blog.csdn.net/vipzjyno1/article/details/21039349/
http://www.jianshu.com/p/e0661ff7d955