由于工作的需要,在平时我们需要学习和借鉴其他优秀的项目,简单的一些没有做加密处理的APP我们可以通过反编译的方式得到资源文件或者是源码文件,只是单纯的资源文件的话我们可以通过特别简单的一个小窍门。
尾缀名修改为zip或者rar压缩格式
修改完后,解压,因为apk文件本来就是压缩文件的一种,这方面大家想了解的查阅一下资料吧!
得到的目录文件,相信res这个文件夹大家都不会陌生,我们打开res文件夹看一下吧!
目录文件还是蛮全的,看看图片
可以看到项目中的图片了,这样的方式适用于没有加密过得apk,如果加密后的自己写的xml文件可能就会变成一堆乱码类似于
好了,简单的已经告诉大家了,这仅仅是资源文件的获取,那么程序源码呢,不要急,这个时候我们需要借助于工具了,
工具下载地址:https://download.csdn.net/download/weixin_36785944/10697720
就这三个工具第一个apktool是用来获取图片、XML配置、语言资源等文件,第二个dex2jar是获取源码的,第三个jd-gui-windows是用来看源码文件的
首先我们把dex2jar和jd-gui解压掉
cmd进入工具目录下
运行jar文件 java -jar jar包名.jar
运行并反编译命令行为:
java -jar apktool_2.0.1.jar d -f E:\工具\测试apk\xxx.xxx.xxx.apk -o RESOURCE
RESOURCE是输出文件夹
这时我们看看文件夹中多了一个RESOUR
是不是已经得到你想要的资源文件了,
下一步是不是该程序源码了,不要急,马上就来
接下来该使用dex2jar得到程序源码了
apk文件改后缀名zip,解压得到classes.dex
把classes.dex文件放入解压好的dex2jar-2.0文件夹中
在cmd命令行下定位到dex2jar文件夹下所在目录,输入"d2j-dex2jar classes.dex",效果如下:
生成了jar文件,现在我们去文件夹中看一下
现在需要利用jd_gui反编译jar包下的源码了
打开jd-gui文件夹下的jd-gui.exe文件
openfile 打开jar包就可得到反编译源码