jdexe反编译
最近因为一些事所以需要得到师兄的某个apk的源代码,但师兄说那个项目包已经删了,哎,没办法,只能自己想办法了。后来找到了反编译apk的方法,现在拿出来分享下。其实这个方法网上都有,我只是记载一下自己这段时间的学习情况。
1.下载工具
首先,要反编译需要下面这
4个工具:
dex2jar:将apk中的classes.dex转化成Jar文件。
JD-GUI:反编译工具,可以直接查看Jar包的源代码。
apktool:反编译工具,通过反编译APK中XML文件,直接可以查看。
apktool-install-windows-r05-ibot:辅助windows批处理工具。
2.解压apk
直接右键解压apk就行了,这没什么好说的。【解压后会有个dex后缀的文件,下面会用到】
3.反编译dex文件
1)解压下载的dex2jar,把解压后的文件夹放到系统盘跟目录中并把这个目录加到系统path变量中,就可以直接用:dex2jar.bat或dex2jar.sh转换dex文件了。
2)DOS行命令如下:dex2jar.bat
xx\classes.dex(xx是classes.dex文件所在的路径)。
将在同目录得到普通jar包:【classes_dex2jar.jar】,就可以用处理普通jar包的方法来反编译这个jar包得到原文件。
4.反编译jar文件
1)解压压缩文件JD-GUI
2)运行该文件夹里的jd-gui.exe,打开上面生成的jar包,
即可看到源代码了。
5.反编译xml文件
为什么要发编译xml文件呢?因为直接解压apk得到的xml文件是乱码来的,我们需要用工具把它调会正常来
具体操作方法:
1)将下载的apktool和apktool-install-windows-r05-ibot两个包解压到同一个文件夹下,这个文件夹有三个文件:aapt.exe,apktool.bat,apktool.jar。
2)把这个文件夹也放到系统盘的根目录中并把这个目录加到path变量中。以HelloWord.apk为例:
3)在DOS命令行中输入:apktool
d
xx\HelloWord.apk
HelloWord得到HelloWord文件夹,此文件夹中的xml文件就是编译好的可以正常查看的文件。
6.后话
不过,说到底反编译还是反编译,还是不能完全地还原出真正的源代码的,比如一般会出现下面这样的问题:
setContentView(2130903048);
在真正的源代码中其实是这样的:
setContentView(R.layout.welcome)
‘贰’ mac上反编译用的jd-gui,强大的网友们能不能提供一下,急需😣
我可以给你一份希望可以帮助你
点击下载jd-gui
jd-gui怎么用
1、在本站下载好压缩包,解压缩,双击运行“jd-gui.exe”程序;
2、打开软件主界面,在软件正上方功能栏中选择“File”,弹出的下拉框中选择“open file”打开文件,或者直接点击工具栏打开文件图标,选择要反编译的类;
3、选择好想要的.class类后,会看到jd-gui会将相关的类都进行反编译,不仅包括我们我们刚刚选择的类,还包括其他相关的类;
4、同时我们可以选择某个编译好的类,保存单个java文件;
5、当我们想查询某个构造函数、类名、函数名时,我们可以使用其查询功能(search)针对不同的条件进行查询;
‘叁’ 如何反编译class文件,简单快速
搜索关键词“jd-gui”,点击进入jd-gui的官方网站。
(1)点击“JD-GUI”链接
(2)点击“Download”链接
(3)点击选择您要下载的版本,如果为windows系统请选择"xxx.windows.zip",如果为苹果或linux系统则选择其他的下载链接。
(1)下载后进行解压
(2)双击“jd-gui.exe”文件
(3)找到您要反编译的class文件。
(4)用鼠标拖拽到jd-gui软件的灰色区域。
此时可以看到,class文件被反编译为了java文件,并且代码格式很好。
在右侧可以看到java的包层级,类,方法等等,十分方便。
‘肆’ eclipse编译出的.jar,使用jd-gui.exe反编译查看,出现中文乱码,怎么破
如果是下载了jd-gui软件,在help—preferences—勾选escape unicode characters就可以解决中文乱码问题
‘伍’ 如何利用jd-eclipse进行反编译
eclipse必须安装反编译插件,才能实现反编译功能。
1、下载jadClipse
地址:sourceforge.net/projects/jadclipse/
将net.sf.jadclipse_3.3.0.jar拷贝到eclipse的plugins目录下;删除eclipse的configuration目录下org.eclipse.update文件,重新启动eclipse;设置jad的可执行文件路径以及生成的临时文件路径
2、设置*.class文件类型默认打开方式
3、设置*.class without source文件类型打开方式,点击Associate editors栏下Add增加按钮,添加JadClipse Class File Viewer并设置成默认
4、删除此org.eclipse.update文件
5、重启eclipse即可
‘陆’ jd-gui 怎么批量反编译class文件
gui的不清楚。我记得jad.exe的命令方式反编译:
jad
Xxxx.class
就这样就会生成一个
Xxxx.jad的文件这个文件就是java源码。
‘柒’ JD-GUI工具在反编译android和java的时候,反编译出的代码怎么导出啊难道只能挨个复制吗
把需要反编译的文件用JD-GUI打开点击->File->Save JAR soureces
选择后导出一个zip压缩包!里面就是所有的源代码了
‘捌’ jd反编译软件中怎么修改
1.JD-GUI这款Java反编译工具是纯绿色,完全免费的,非常适合开发者,其界面也简洁大方
2.鼠标单击“file”从中选择“Open File ...“选项,弹出一个文件选择框,可以选择要打开的文件,或者直接单击文件夹图标,直接弹出文件选择框
3.从文件选择框中选择要打开的.class类型的文件,单击‘确定’
4.从打开的文件的左侧可以看到文件的保存位置,类及方法,右侧显示类的具体内容,注释不会显示
5.还有一种方法是直接打开jar包,鼠标单击文件夹图标,弹出文件选择框,选择一个jar包,蛋鸡‘确定’
6.从打开的界面中可以看到整个jar包中的.class文件的反编译结果
7.另外介绍一下其他的方法:选择文件打开 搜索
8.选择文件打开:类似于eclipse快捷键ctrl+shift+r,打开一个小窗口,输入想要打开的文件名,列表中会根据文件名列出所有匹配的文件,已供选择。
——此功能用以检索类
9.搜索:类似于电脑快捷键ctrl+f,也支持快捷键ctrl+f,但是不会打开小窗口,而是在界面左下角有一个输入框,输入想要搜索的方法名,会根据方法名高亮标出所有匹配的方法
——此功能用以搜索方法
10.高级搜索方法就是选择下图标识的搜索图标,然后进行搜索
‘玖’ Eclipse怎么离线安装JD-Eclipse反编译插件
Eclipse离线安装JD-Eclipse反编译插件方法步骤如下:
1,先下载Jd-eclispe插件的压缩包
2,jdeclipse_update_site.zip下载好了之后,解压,将plugins文件下的jd.ide.eclipse_0.1.3.jar和jd.ide.eclipse.win32.x86_0.1.3.jar
复制到eclipse安装目录下的plugins里 ,假设eclipse的安装目录为:D:\soft\eclipse-jee-luna\eclipse-jee-luna\plugins
3、打开eclipse,点击菜单栏Help->Install New Software/update(版本不同不一样)
4,在弹出的页面点击add按钮,在弹出来的框中选择下载好安装包的地址,假如放在d盘的,然后点击ok按钮。
5、点击ok之后进入到下一个对话框,勾上对话框中间显示的反编译插件,然后把Contact all update sites install to find required software前面的勾点掉,防止它寻找指定的软件前先访问所更新站点,耗费时间。然后一直点击next,就安装完成了,安装完成之后重新启动eclipse。
6,重启之后,在窗口菜单栏点击Widow->Preference->General->Editors->File Associations,将FileType里的*.class和*.class without source的Associated editors下面的Class File Editor设置成default即可。
‘拾’ 最好的java反编译工具是哪个
jd-gui 是Java反编译中比较好用的一个工具,用法如下:
下载jd-gui
双击打开jd-gui.exe
单击左上角的File--->Open File
找到需要反编译的.class文件 打开即可
