您的位置:首页 > 其它

apk文件反编译

2019-03-22 23:36 246 查看
最近正好在做Apk文件的反编译,今天整理出来分享给大家,如下:

1、 准备工具
1.1 apktool
作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看
1.2 dex2jar
作用将apk反编译成java源码(classes.dex转化成jar文件)
1.3 jd-gui
作用:查看APK中classes.dex转化成出的jar文件,即源码文件

以下是本人所选用的工具版本,具体用什么版本依照自己安装的java的jdk版本确定
本人jdk版本:


注意:版本达不到的话,会出现各种错误,会大大影响工作的进度。
2.反编译流程
2.1将apktool文件解压,如图:

有些网站可能会说解压得到三个文件分别是aapt.exe,apktool.bat,apktool.jar
,这里怎么才有两个,其实两个也不会影响编译的进行。
2.2打开命令行界面(运行-CMD) ,定位到apktool文件夹所在位置,输入以下命令:apktool.bat d -f AccountMS.apk




2.3打开AccountMS1文件如图:

2.4生成的文件和文件夹当中,我们关心的是【res】文件夹中和AndroidManifest.xml文件,打开res文件夹,里面就有我们想要看到的东西了,如下图所示:

这里不再一一打开。

2.5打开解压后的文件如图:

到这里不知道大家有没有发现反编译得到的文件,与解压后得到的文件之间的区别,有兴趣的同学可以观察一下。



2.6在解压文件中得到其中的classes.dex文件(它就是java文件编译再通过dx工具打包而成的),将获取到的classes.dex放到之前解压出来的工具dex2jar-2.0文件夹内。

2.7、在命令行下定位到dex2jar-2.0.bat所在目录,输入dex2jar-2.0.bat classes.dex,效果如下:

此时的文件夹中已经出现新的文件。

3、反编译classes.dex得到classes-dex2jar.jar文件之后,就可以使用【jd-gui】工具将class文件反编译成java源代码了
3.1、启动jd-gui工具,如图:



3.2、打开刚才得到的classes-dex2jar.jar文件,如图:

之后就得到你想要的java源代码

到此apk反编译得到java源文件到此结束了。请大家批评指正,谢谢!!!

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: