下载地址:dex2jar合集
此dex2jar工具需要在linux系统中使用,如ubuntu、deepin等,AndroidN之后需要使用dex2jar-2.1。
1.将下载的dex2jar.zip,使用命令行进入解压的目录。
2.将需要反编译的.dex文件拷贝到 dex2jar 目录
3.依次执行下面命令(第一条命令为jar 转成 dex,如有dex忽略此命令):
sudo sh d2j-jar2dex.sh javalib.jar
sudo sh d2j-dex2jar.sh javalib-jar2dex.dex
sudo chown 用户名 javalib-jar2dex-dex2jar.jar
sudo chgrp 用户名 javalib-jar2dex-dex2jar.jar
加上 sudo 原因是在转的过程中报错才需要加,不报错可以不用 sudo,因为加了sudo会将转化后的 jar 包 ower 和 group 改回用户所有。
Android 8.0 需要先将 jar 转成 dex,然后再转为静态 jar,生成framework.jar,导入AndroidStudio依赖后 可以调用系统framework API。
将out/target/product/platform_demo/obj/JAVA_LIBRARIES/framework_intermediates/javalib.jar 拷贝到 dex2jar 目录,按上述执行命令生成静态的framework.jar
在 Android 6.0 上源码可以直接拷贝 out 目录下的 dex 文件,直接从第二条命令开始执行,不会执行第一条命令将jar转化为dex。
.apk 改成 .zip 文件并解压,获取到它的 .dex 文件,dex2jar 主要对该 .dex 文件反编译,按上面步骤进行反编译。