apktool java
做用:资源文件获取,能够提取出图片文件和布局文件进行使用查看windows
下载地址:https://bitbucket.org/iBotPeaches/apktool/downloads工具
dex2jar布局
做用:将apk反编译成java源码(classes.dex转化成jar文件)
下载地址:http://sourceforge.net/projects/dex2jar/files/ui
jd-guispa
做用:查看APK中classes.dex转化成出的jar文件,即源码文件
下载地址:http://jd.benow.ca/.net
下载完成后如图:命令行
若是上面的文件没有下载成功就本身在其余地方下载,网上搜索下仍是不少的,只是注意下比较新的版本就行了哈(版本太旧会致使反编译失败),这里能够将这三个一块儿下载----> CSDN下载(PS:没有积分的能够直接问我要文件,我也不知道为何一传上去就默认要5分了)
3d
将【dex2jar-2.0.zip】和【jd-gui-windows-1.4.0.zip】分别解压到当前文件夹,接下来开始使用blog
使用cmd将目录切换到当前文件夹的目录下,而后输入
java -jar 【apktool的jar包名称】 d -f 【要反编译的apk路径】 -o 【反编译后保存的文件名】
须要注意若是出现”Input file was not found or was not readable"的问题,
是由于apktool升级到2.0以上时,使用方式已经替换,格式为:apktool d [-s] -f <apkPath> -o <folderPath>
而后目录下生成了对应文件夹,打开里面就是apk的资源文件
将要反编译的APK后缀名改成.rar或者 .zip,而后解压,获得classes.dex文件(它就是java文件编译再经过dx工具打包而成的)
将获取到的classes.dex放到以前解压出来的工具【dex2jar-2.0】文件夹内:
在命令行下定位到dex2jar.bat所在目录,输入"d2j-dex2jar classes.dex",效果以下:
在这里的执行过程当中若是没报错,那么就表示已经反编译成功了
命令执行完成以后,在当前目录下就能够看到生成的Jar文件:
反编译classes.dex获得classes-dex2jar.jar文件以后,就可使用【jd-gui】工具将class文件反编译成java源代码了
使用jd-gui打开classes-dex2jar.jar就能够看到源代码了,以下图所示:
JD-GUI虽然能够将class反编译成java源代码,可是对于一些被混淆过的class,反编译的效果就不是那么理想了,被混淆过的class反编译后的效果图(类文件名称以及里面的方法名称都会以a,b,c....之类的样式命名):
到这里就OK了,反编译成功。
须要注意的是
出现这个提示时说明你的jdk在1.8或以上,jd-gui只支持到1.7版本,你能够换成用Procyon-Decompiler或其余