Android反编译的使用

写这篇反编译,只是让大家了解一下反编译工具如何使用,已一颗学习的心态去了解它,而不是去反编译别人的代码,窃取别人的劳动果实,毕竟google出来了这个工具,大家也一起学习一下。

在反编译的过程中,主要用到了三个工具,google官方都有提供。

1:Apktool:用来反编译apk的资源文件

2:dex2jar:用来将android的dex文件反编译成jar文件

3:jd-gui:用来将反编译出来的jar文件打开,让我们看到class文件,java源码

下载地址:

google官方的地址

打开地址之后就会看到这个界面:我们只需下载前三个


Android反编译的使用_第1张图片

接下来介绍具体的使用方法

1.dex2jar的使用

一般我们将apk文件解压后有两部分文件需要处理,一种是xml文件,另一种一个dex文件(.dex),

我们可以从.dex文件中得到jar,

首先我们先将我们需要反编译的apk文件的后缀名改为.zip,然后将它解压,解压后我们会得到一个classes.dex文件,我们可以从这个文件中得到我们想要的源码文件。

然后就是我们使用dex2jar来反编译这个文件,得到我们的源码

首先打开dex2jar文件,我们找到如下的目录中会有一个dex2jar.bat


Android反编译的使用_第2张图片

该目录下我们打开dos窗口,并将我们的classes.dex文件放到里面,然后我们在dos下执行dex2jar.bat classes.dex

2.jd-gui的使用:

通过上面的命令我们会得到一个文件classes.dex.dex2jar.jar,上图中也给出来了,接下来我们双击打开jd-gui,然后将这个文件打开,就可以看到源码了。

利用后者再得到大家垂涎已久的java文件。

3. apktool的使用

工具可以把APK包中的乱码xml编译成明文源码。

同样打开dos窗口,执行apktool的命令运行

apktool d 111.apk 111    把111.apk反汇编到当前目录下111目录

不过一般我们也不需要反汇编xml文件。

这就是反编译工具的简答介绍,网上还有许多比较详细的,我只是跟据我平时的用法把它的步骤简单介绍了一下,毕竟只是一个工具,没有什么难度。希望大家能一起学习下。

你可能感兴趣的:(Android反编译的使用)