mac环境下android反编译

2019-09-25  本文已影响0人  Chevee

一、需要的工具

1.apktool:反编译APK文件,得到classes.dex文件,同时也能获取到资源文件以及布局文件。
2.dex2jar:将反编译后的classes.dex文件转化为.jar文件。
3.jd-gui:用于将.jar文件转换成java代码。

二、反编译步骤

第一步:使用apktool工具对APK进行反编译
1.下载apktool

1569227888297.jpg
2.运行apoktool脚本进行反编译
①.把你需要反编译的apk文件也复制到 /usr/local/bin 文件夹下,确保apktool、apktool.jar以及apk文件都在/usr/local/bin目录下
②. 终端进入/usr/local/bin 文件夹下,输入命令 apktool d xxx.apk或apktool d -s xxx.apk回车,等待执行完毕
apktool d xxx.apk生成smali文件
apktool d -s xxx.apk生成dex.classes文件

第二步:使用dex2jar工具把classes.dex文件转化成.jar文件

  1. 下载dex2jar并解压
image.png

2.进入到你解压后的dex2jar文件夹下(根据你的实际情况文件夹位置不一样),如:

cd /Users/huangqianwei/Downloads/dex2jar-2.0

3.把classes.dex文件复制到解压后的dex2jar文件夹下,终端执行命令sh d2j-dex2jar.sh classes.dex

sh d2j-dex2jar.sh classes.dex

若出现dex2jar使用权限问题,则执行终端命令

sudo chmod +x d2j_invoke.sh
  1. 执行完毕后,会在文件夹下生成一个.jar文件,里面就是java源码

第三步:使用JD-GUI软件查看jar包下的java源码
1.下载并安装jd-gui
2.打开安装好的JD-GUI,直接把第二步生成的.jar文件拖进去,就能看到反编译出来的java源码了

参考文献:https://www.jianshu.com/p/3a305f32c4a3

上一篇下一篇

猜你喜欢

热点阅读