apktool——可以反编译软件的布局文件、图片等资源,方便大家学习一些很好的布局;
dex2jar——将apk反编译成java源码(classes.dex转化成jar文件);
jd-gui——查看APK中classes.dex转化成出的jar文件,即源码文件。
1、apktool文件的下载
apktool是反编译Android apk文件的工具,apktool的主页是https://ibotpeaches.github.io/Apktool/;我们可以从这里找到最新版本的apktool.jar文件https://bitbucket.org/iBotPeaches/apktool/downloads/,以及apktool的安装说明。
2、apktool的安装
前面我们已经下载了最新的apktool.jar文件,最新版本是2.3.1,请按照以下步骤操作,参考https://ibotpeaches.github.io/Apktool/install/:
新建文本文件,将下面的脚本复制到文本并保存,然后重命名为apktool.bat;
@echo off
if "%PATH_BASE%" == "" set PATH_BASE=%PATH%
set PATH=%CD%;%PATH_BASE%;
chcp 65001 2>nul >nul
java -jar -Duser.language=en -Dfile.encoding=UTF8 "%~dp0apktool.jar" %*
从上面脚本中也可以看到是用apktool.jar文件去处理;
将下载的apktool_2.3.1.jar文件重命名为apktool.jar;
3、使用apktool反编译apk
将上述两个文件apktool.bat和apktool.jar文件放到同一文件夹下(任意路径),打开命令窗口(win+R-->cmd-->enter);定位到apktool所在的文件夹;输入以下命令:
>apktool.bat d -f .apk objectFolderPath
其中,objectFolderPath为可选项,如果此项不存在,软件将会在apktool文件夹下新建一个apk文件名的文件夹,否则存储到目标文件夹;
方法2:命令行进入目录:输入
>java -jar apktool_2.3.4.jar d -f test.apk -o mytest,其中testapk (要反编译的apk名字)mytest(反编译后存的目录),这几个文件都要在一个目录下;
4使用dex2jar反编译apk得到Java源代码
将test.apk解压将其中的classes.dex文件放到dex2jar-2.0 目录下
5.dos命令定位到dex2jar.bat所在目录,输入"d2j-dex2jar classes.dex",效果如下:
d2j-dex2jar.bat classes.dex
6使用【jd-gui】工具将class文件反编译成java源代码
双击jd-gui.exe 将classes-dex2jar.jar 拖入jd-gui.exe即可
原作者:https://www.cnblogs.com/pythoncd/p/10367144.html