您的位置:首页 > 移动开发 > Android开发

Android apk 反编译工具及方法

2016-10-06 00:40 309 查看
http://www.xiazaiba.com/html/28106.html#j_down_list 地址;

Android Killer(apk反编译工具APK逆向工具下载) V1.3.1绿色版

包含:dex2jar 这个工具用于将dex文件转换成jar文件 ;

jd-gui 这个工具用于将jar文件转换成java代码 这两个工具。

步骤: 第一,先下载反编译工具。

第二, 将所要反编译的demo 改成.zip 的形式先进行解压。

第三,将这两个工具都下载好并解压,然后我们就开始对Demo程序进行反编译。解压dex2jar压缩包后,你会发现有很多个文件,如下图所示:

http://blog.csdn.net/guolin_blog/article/details/49738023 出处。

这个classes.dex文件就是存放所有java代码的地方了,我们将它拷贝到dex2jar解压后的目录下,并在cmd中也进入到同样的目录,然后执行:

d2j-dex2jar classes.dex

没有报任何错误,这就说明我们已经转换成功了。现在观察dex2jar目录,你会发现多了一个文件 classes-dex2jar.jar这个文件就是我们借助工具之后成功转换出来的jar文件了。

最后 一步就是用 jd.gui 了。

使用jd-gui工具打开classes-dex2jar.jar这个文件.

其实细心的朋友可能已经观察到了,刚才Demo.apk的解压目录当中不是已经有资源文件了吗,有AndroidManifest.xml文件,也有res目录。进入res目录:

这不是所有资源文件都在这里了么?其实这些资源文件都是在打包的时候被编译过了,我们直接打开的话是看不到明文的,不信的话我们打开AndroidManifest.xml文件来瞧一瞧,内容如下图所示:

可以看到,这代码是完全没法阅读的。当然如果你去打开activity_main.xml看看,结果也不会好到哪儿去:

最后需要注意: 将apk 中的资源文件进行反编译出来需要用到的是apktool.

由此可见,直接对APK包进行解压是无法得到它的原始资源文件的,因此我们还需要对资源进行反编译才行。

要想将APK文件中的资源反编译出来,又要用到另外一个工具了:

apktool 这个工具用于最大幅度地还原APK文件中的9-patch图片、布局、字符串等等一系列的资源。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: