欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

[原创]反编译工具dava的使用,个人觉得效果比jad/jd-gui效果好

[原创]反编译工具dava的使用,个人觉得效果比jad/jd-gui效果好

使用过ded进行dex反编译的同学应该知道dava是个神马东西。他是ded中实现class->java的反编译工具
个人觉得他的解析效果比jad/jd-gui要好,美中不足的是稳定性不够好。
ded是linux下的,对于使用windows的同学来说只能单独使用dava来反编译了。dava使用起来真是好蛋疼。相信有同学已经尝试过了。经过一番努力终于成功了。
dava是soot的一部分使用它就要下载soot。
下载 最新版 2.5.0 http://www.sable.mcgill.ca/soot/soot_download.html
下面是运行命令有点长先来张图。后面慢慢解释

指令解释
cmd 输入指令cd 到你soot-2.5.0.jar的 目录然后继续输入下面的指令
(1)设置依赖库路径。 Java –cp soot-2.5.0.jar
(2)启动soot 。      soot.Main
(3)设置soot的classpath 。
-cp C:\Java\jdk1.6.0_21\jre\lib\jce.jar;(你jdk/jre中的jce,这个是反编译必须要的)
C:\Java\jdk1.6.0_21\jre\lib\rt.jar;(你jdk/jre中的rt,这个是反编译必须要的)
D:\adt-bundle-windows-x86\sdk\platforms\android-4.2\android.jar;(你android sdk所在的)
yourdir(你要反编译的文件所在的目录)
特别注意 yourdir 中不要包含包名 比如你的文件夹为workspace/bin/com/XX…..class
而你的包名为com。那么这里设置的yourdir应为workspace/bin
(4)反编译选项 。-f dava
(5)输出目录。  -d output
(6)要反编译的文件
目录下的所有文件 -process-path yourdir(yourdir 的设置跟上面一样 不要包括包名)
  单个文件  package.XX    package为包名,XX为要反编译的文件名 不需要.class的后缀
最后给出整条指令
反编译 目录下的文件
java -cp soot-2.5.0.jar soot.Main -cp C:\Java\jdk1.6.0_21\jre\lib\jce.jar;C:\Java\jdk1.6.0_21\jre\lib\rt.jar;D:\adt-bundle-windows-x86\sdk\platforms\android-4.2\android.jar;D:\Soot\test16 -f dava  -process-path D:\Soot\test
反编译反编译单个文件
java -cp soot-2.5.0.jar soot.Main -cp C:\Java\jdk1.6.0_21\jre\lib\jce.jar;C:\Java\jdk1.6.0_21\jre\lib\rt.jar;D:\adt-bundle-windows-x86\sdk\platforms\android-4.2\android.jar;D:\Soot\test16 -f dava  com.example.myfish.Enemy

上传的附件 1.png

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途。
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功