mac 下 Android apk反编译详细步骤 | 您所在的位置:网站首页 › 编译dex › mac 下 Android apk反编译详细步骤 |
mac环境下工具清单:
1、Apktool :将apk文件进行反编译,得到字节码(classes.dex)和资源文件及其他H5文件等。 2、dex2jar:将反编译后的classes.dex文件转化为.jar文件,此步骤是将DEX字节码转换为class字节码 3、mac下java反编译工具如jd-gui:用于将.jar文件转换成java代码。 第一步:Apktool 工具下载下载官网:apktool下载请点击 使用命令前需要将apk文件copy到 /usr/local/bin/ 下,这步很重要,否则无法使用命令。 使用命令:可参考https://ibotpeaches.github.io/Apktool/documentation/ (1)使用 apktool d test.apk 执行命令后会生成反编译的结构目录如下: (2)此种方式反编译的包中不会出现classes.dex 字节码, 如果想看到classes.dex 字节码需要使用如下命令: apktool d -s test.apk 或者通过如下命令进行回编译: 在(1)的基础上进行执行如下命令 apktool b [反编译的文件夹] 执行命令后会 在test下生成build文件夹,classes.dex在build/apk/ 下。 当然还有一种方式就是使用解压缩软件解apk文件也可以得到classes.dex 。 第二步:dex2jar工具下载及使用1、下载dex2jar 提供两个地址: (1)源码build 方式:https://github.com/pxb1988/dex2jar ,将zip包下载后解压,在根目录下执行以下几步。 In the root directory run: ./gradlew distZip cd dex-tools/build/distributions Unzip the file dex-tools-2.1-SNAPSHOT.zip (file size should be ~5 MB) 按照上述步骤执行,我们最终得到 dex-tools-2.1-SNAPSHOT文件夹。 (2)第二种方式:https://sourceforge.net/projects/dex2jar/ 下载后直接解压即可用。 解压后的文件夹如下: 2、d2j-dex2jar.sh和d2j_invoke.sh添加运行权限: chmod +x d2j-dex2jar.sh chmod +x d2j_invoke.sh 3、将classes.dex 文件拷贝到dex2jar-2.0目录下 执行命令生成jar 包 ,执行如下命令: sh d2j-dex2jar.sh classes.dex 则会在当前目录下生成classes-dex2jar.jar。 第三步:将jar反编译为java文件(1)下载jd-gui,解压后即可使用,将jar 拖入即可进行反编译。 http://java-decompiler.github.io/ |
CopyRight 2018-2019 实验室设备网 版权所有 |