当前位置:首页 > 技术心得 > 正文内容

Android APK反编译

xjtudll12年前 (2013-10-10)技术心得4830

反编译需要使用到以下两个软件

1、dex2jar

http://code.google.com/p/dex2jar/downloads/list

2、jdgui

http://code.google.com/p/innlab/downloads/list

反编译步骤如下:

1、将APK文件后缀改成zip或rar,解压,得到一些文件或文件夹,其中的classes.dex,它就是java文件编译再通过dx工具打包而成的。

2、找到classes.dex,将其复制到dex2jar的文件夹目录下面,与dex2jar.bat在同一目录即可。打开命令提示符,一直打开到dex2jar目录,然后执行以下命令:

dex2jar.bat classes.dex

clip_image002

命令执行后,会在dex2jar目录下生成一个classes_dex2jar.jar文件。如图所示

clip_image004

3、运行jd-gui目录下的jd-gui.exe,打开文件:classes_dex2jar.jar,即可查看java代码了。

File---> Openfile --->classes_dex2jar.jar

clip_image006

注意:

dex2jar和jdgui要能运行,必须要先安装JDK。

下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

 

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://www.xjtudll.cn/Exp/287/

标签: Android
分享给朋友:

“Android APK反编译” 的相关文章

Multisim运放输出超过电源电压解决

Multisim运放输出超过电源电压解决

在使用Multisim自带库里的运放的时候,例如LM324M,发现一个问题,运放的输出电压能达到几百V甚至几千V,而电源明显只有几V而已。输出电压超过电源电压,理论上是不可能的,实际上也是不可能的,那么肯定就是仿真有误了,其实根本原因是Multisim里面运放是三脚模型,根本没考虑电源。我们查看LM...

如何在Firefox上安装未通过验证的扩展

如何在Firefox上安装未通过验证的扩展

参考资料: http://www.cnblogs.com/pcat/p/6806340.html https://www.zhihu.com/question/47505319 xpi文件是Firefox浏览器的扩展文件,打开Firefox,把xpi文件...

IOS获取应用程序的名称和版本号

应用程序的名称和版本号等信息都保存在mainBundle的一个字典中,用下面代码可以取出来。 NSDictionary* infoDict =[[NSBundle mainBundle] infoDictionary]; NSString* versionNum =[infoDict object...

如何从远程桌面复制文件

如何从远程桌面复制文件

工作学习中,经常需要用到远程桌面,远程桌面确实很方便,但每次要将本地的东西拷贝到远程电脑或将远程电脑上的东西拷贝到本地时,都是用U盘来传递文件,这样就相当不方便了。近日,偶然看了远程桌面的帮助,发现其本身就是带文件复制、粘贴功能的,只是默认没有开启而已。 第一步:在远程桌面连接窗口,单击【选项】,...

添加 PreferenceFragment到FragmentPagerAdapter

添加 PreferenceFragment到FragmentPagerAdapter

如何添加 PreferenceFragment到FragmentPagerAdapter 首先,android v4 support library不支持这个功能,android v13 support library才支持这个功能。 如何从android v4 support library升级到...

C#中实现VB中的CreateObject方法

经常看到有些VB的例子中直接用个CreateObject就可调用系统功能(大多是COM对象),像用户设定,网络设定等等。虽然C#中可以通过使用VB的命名空间的方法来调用CreateObject函数,但是这样比较没什么用,因为生成的对象的所带有的方法都不能使用。C#中还可以直接用添加引用的方式来调用一...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。