2018-03-15

dex2jar & jd-gui & apktool

下面说下这个方法,重头戏。这个最恶心的就是下载了,mac环境下有很多讲这种方法的但是要么就是下载难要么就是给的命令行不懂,在这里,不要管别人那怎么样了,按我的走,保证走通。首先下载,话不多说,直接上传网盘。

  • 反编译代码,也就是java文件:

    1. dex2jar:把dex文件转换成jar文件
    2. jd-gui:把jar文件转换成java文件
  • 反编译资源,也就是res文件

    1. apktool:apk逆向工具

反编译代码

  1. 首先解压dex-tool-2.0.zip得到dex2jar-2.0文件夹,mac环境下需要的三个文件是 d2j_invoke.sh & d2j-dex2jar.sh & lib,他们在同一目录级别。看图:

[图片上传失败...(image-644145-1521082235529)]

  1. 将apk文件的后缀改为zip,并解压(这时候其实我们可以得到该app使用的图片资源,但是xml是看不了的,还是需要反编译资源),然后将classes.dex文件移动到dex2jar-2.0的文件夹目录下,即与上述三个文件统一目录。看图:
2018-03-15_第1张图片
image.png
  1. 打开终端cd 到该目录下输入命令:
chmod a+x d2j_invoke.sh
chmod a+x d2j-dex2jar.sh

给这两个文件添加可执行权限。然后输入命令:

sh d2j-dex2jar.sh classes.dex

这时候就会在dex2jar-2.0目录下生成一个classes-dexjar.jar文件,如图:

2018-03-15_第2张图片
image.png

打开jd-gui-osx-1.4.0,使用JD-GUI.app打开classes-dexjar.jar即可。

结果展示一下:

2018-03-15_第3张图片
image.png

是可以看到具体的代码的。

反编译资源

在我的百度网盘里下载apktool,解压缩后有两个文件apktool.sh & apktool.jar,将apk文件移动到与上述两个文件相同的目录,终端cd到该目录,执行命令:

sh apktool.sh apktool d xxx.apk

你可能感兴趣的:(2018-03-15)