首页
论坛
课程
招聘

Android的APK文件反编绎

2011-11-4 22:18 16411

Android的APK文件反编绎

2011-11-4 22:18
16411
最近在写代码的时候,接触到一些反编绎的资料,也用了一些工具,现在记录如下。
需要用到的工具:
1.dex2jar  下载地址:http://laichao.googlecode.com/files/dex2jar-0.0.7-SNAPSHOT.zip
2.JD-GUI    下载地址:http://laichao.googlecode.com/files/jdgui.zip
3.apktool    下载地址:http://code.google.com/p/android-apktool/

首先我们需要从APK得到什么?因为Android程序最重要的是两部分,java代码和资源文件。
一、反编译Apk得到Java源代码
1.首先将apk文件,将后缀改为zip。因为APK文件就是rar文件,可以改后缀名。但是这样解压后是得不到xml文件的,会看到是乱码。后面会讲怎么样得到xml文件。解压,得到其中的classes.dex,它就是java文件编译再通过dx工具打包而成的;
2.解压下载的dex2jar,将classes.dex复制到dex2jar.bat所在目录。在命令行下定位到dex2jar.bat所在目录,运行
dex2jar.bat classes.dex
生成classes.dex.dex2jar.jar
3.运行JD-GUI,打开上面生成的jar包,即可看到源代码了。

二、反编绎资源文件
1.将下载的两个包解压到同一个文件夹下,应该会有三个文件:aapt.exe,apktool.bat,apktool.jar;
在命令行下定位到apktool.bat文件夹,输入以下命令:
apktool d C:\***.apk  C:\***文件夹
命令行解释:apktool d [要反编译的apk文件 ] [输出文件夹]

【预售】物联网安全漏洞实战!离物联网安全研究员只有一个课程的距离!报名满30人开班!

最新回复 (14)
小公媛 2011-11-5 07:09
2
0
谢谢楼主的指导,学习了
arsusanh 2012-2-9 20:11
3
0
谢谢楼主  好东西。。
doking 2012-2-13 23:17
4
0
谢谢楼主,呵呵,好东东
jbwang 1 2012-2-14 00:46
5
0
谢谢,分享。 android刚刚开始学习。
upxshell 2012-3-2 20:24
6
0
3.运行JD-GUI,打开上面生成的jar包,即可看到源代码了。
这个怎么打不开刚生成的jar包呢
zzcc 2012-3-3 11:16
7
0
经测试无法搞定。。。
幻影火 2012-3-3 11:21
8
0
他是可以反編譯,不過大多都是用dex的組合語言去修改0.0。
zzcc 2012-3-3 15:11
9
0
可能是版本的问题吧,我反编译出来只有2kb。   作者可能是使用最新版编译的
永夜极光 2012-3-17 16:35
10
0
是不是上面这3个都要下载的啊?
永夜极光 2012-3-17 16:41
11
0
看了不懂啊 刚接触安卓编程方面  看不明白到底要怎样弄
方向感 2012-4-13 03:42
12
0
直接下载一个ApkTool_GUI 2.0来用更方便哦
AsmDebuger 1 2012-5-9 10:23
13
0
谢谢,开始学习安卓。
hacklang 1 2012-12-2 01:45
14
0
ApkTool_GUI 2.0在哪下载,我在网上搜不到,能给个下载地址不?
Claud 6 2012-12-2 15:19
15
0
游客
登录 | 注册 方可回帖
返回