看到别人的APK实现的效果,各种查资料都不知道怎么实现,甚是苦恼,下面介绍一个方法解决这个问题,反编译。仅供学习!!!
下载反编译工具包,下载地址:http://download.csdn.net/detail/h573406032/7167155
工具如下:
将apk文件解压后有两部分文件需要处理,一种是xml文件,另一种一个dex文件(.dex),我们可以从.dex文件中得到.class,利用后者再得到大家垂涎已久的java文件。
一、得到java文件 步骤:
1、将apk文件后缀改为zip并解压,得到的文件夹下有一个classes.dex文件
2、把classes.dex拷贝到和dex2jar.bat(dex2jar-x.x.x.x-xxxx.zip解压后的目录下)文件同目录下
3、打开命令行:cmd 切换到dex2jar.bat目录下
4、运行classes.dex dex2jar.bat
5、运行后在同目录下生成 classes_dex2jar.jar
6、进入解压后的jd_gui-x.x.x.xxxx文件夹下打开jd-gui.exe文件,open file上面生成的jar文件,如下,源文件就得到了。
二、得到比较完全的布局和资源,直接将apk后缀改成.zip也能够得到一部分布局和资源
步骤:
1、解压apktoolx.x.x压缩文件和apktool-install-windows-xxxx
2、把apktool文件夹下的apktool.jar拷贝到apktool-install-windows目录下,一共有3个文件
3、命令行,cmd定位到上面3个文件所在的目录下,输入以下命令:
apktool.bat d -f abc123.apk abc123
apktool.bat d -f 需要反编译的apk 输出文件夹
注:当输出文件夹已存在时要加上-f ,如果输出文件夹不存在,中间的-f就要去掉
现在可以在你的输出文件夹中看到反编译的文件了