如何反编译Apk得到Java源代码

Python011

如何反编译Apk得到Java源代码,第1张

首先要下载两个工具:dex2jar和JD-GUI

前者dex2jar是将apk中的classes.dex转化成Jar文件,而JD-GUI是一个反编译工具,可以直接查看Jar包的源代码。

首先将apk文件,将后缀改为zip,解压,得到其中的classes.dex,它就是java文件编译再通过dx工具打包而成的;

解压下载的dex2jar,将classes.dex复制到dex2jar.bat所在目录。在命令行下定位到dex2jar.bat所在目录(在DOS命令下CD 目录)

运行

dex2jar.batclasses.dex

生成

classes.dex.dex2jar.jar

运行JD-GUI(jd-gui.exe),打开上面生成的jar包,即可看到源代码了

安卓apk文件反编译:

一、反编译xml文件

1>

首先下载我给你们提供的文件夹apk_fanbianyi,把它放到某个盘的根目录下(为了方便输入dos命令),然后打开apktool文件夹,安装win+r键,然后输入cmd,进入dos命令行,大家别怕,不用晕,很简单的。

2>

然后在dos命令中首先输入文件夹所在盘符+“:”回车,接着再输入cd+apktool所在目录,切换dos工作空间到apktool文件夹下。

3>

接着输入

apktool.bat

d

【需反编译apk文件路径】

{【反编译文件反编译后的路径】},其中最后一部分可以省去,系统会默认把apk文件反编译到apktool目录下,例如输入

apktool.bat

d

d:/apk_fanbianyi/ttkp.apk,在apktool文件夹下就会生成一个ttpk的文件夹,所有的xml文件全部反编译成功。

二、反编译java文件

1>

首先解压需要反编译的apk文件,拷贝出里面的classes.dex文件到dex2jar文件夹(为了方便操作,省去dos命令输入路径的麻烦)

2>

把工作空间切换到dex2jar文件夹下,输入命令cd

d:/apk_fanbianyi/dex2jar回车

3>

输入命令dex2jar.bat

classes.dex回车,发现dex2jar文件夹下多了一个classes_dex2jar.jar文件,这是反编译成功的java文件

三、xml文件的打开

1>

打开apktool文件夹下的ttkp文件夹,任意找到一个xml文件,选中单击右键,选择notepad++打开(需下载),如果没有此软件,可以选择打开方式,选择记事本打开

四、java文件的打开

1>

dex2jar文件夹下的classes_dex2jar.jar拷贝到apktool文件夹的ttkp文件夹中,不能用notepad++打开,不然会乱码的

2>

启动apk_fanbianyi文件夹下的jd-gui.exe,然后点左上角file,选择open

file,找到classes_dex2jar.jar文件,可以发现有很多包,选择包下的任意一个java文件,打开不乱码了,是不是很神奇,哈哈,你学会了安卓apk文件反编译