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

Android APK反编译

xjtudll13年前 (2013-10-10)技术心得6450

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

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反编译” 的相关文章

Altium 比较两个PCB的不同

Altium 比较两个PCB的不同

一般情况下,我们如果修改了PCB,都会标明大概修改了什么地方。但是有的时候,我们修改了PCB,却忘了标明改了什么地方,由于改动较小,过了一段时间之后,彻底忘了改了哪里。这时候要想知道改了哪里,该如何做? 首先,要说明的是,Altium本身的Compare功能是针对project自身的历史版本的(既可...

Xcode 不显示打印(NSLog)的内容

Xcode 不显示打印(NSLog)的内容

用Xcode的时候,突然发现不显示打印的消息了,感觉非常奇怪,之前一直正常可用。 最终发现原因: 自己无意中关了打印窗口了,那自然就没法显示打印信息了 如图所示,点右下角那个小按钮即可。 或者使用快捷键:command + shift + c 问题解决,打印窗口出现。...

Protel99SE自动编号

Protel99SE自动编号

说到Protel99SE的自动编号,大家想到的肯定是Tools->Annotate,如图所示。 但是这种方法有个很大的缺点,虽然可以设置自动编号的方向,但是编号却不尽如人意。例如,我想让某一部分元件的编号是连续的,但是用此方法所得的编号很难保证连续。这样的话给绘制PCB的工作带来了很大麻...

Protel99SE检查遗漏的封装

Protel99SE检查遗漏的封装

画原理图的时候,封装是要填写的。有的人习惯元件放置后立即填写,有的人习惯原理图画好后,再去填写所有的。但是不论哪种方式,都不可避免的会遗漏一些封装未填写,这样在导入到PCB的时候就会有些小麻烦。所以有必要在原理图完成后检查封装是否遗漏。检查封装的捷径方法就是利用导出电子表格命令将元件封装输出到电子表...

CRC查表法——表的由来

为了更容易理解这篇文章,拿出纸笔跟着算一遍吧。文中的一些假定:a0,a1,b0,b1,b2,b3,c1,c2,c3等等,拿笔将其含义记下来,免得思维混乱。 查表法实际上利用的是XOR运算的交换律和结合律,即(A XOR B )XOR C = A XOR (B XOR C) 我们再以一个简单的例子来...

金蝶K3 BOS单据 完整显示单据头

金蝶K3 BOS单据 完整显示单据头

进入到序时簿,格式->选项设置 以委外订单为例: 弹出选项设置窗口,不要勾选【合并同一张单据的表头项目】,最后点击【确定】按钮。...

发表评论

访客

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