[转载]Android的程序解码与XML文件解码

[转载]Android的程序解码与XML文件解码 – 刘凯文 – 博客园.

首先,怀着无比激动的心情写下这篇日志…..

Googles真的很给力….让我有幸看到Android应用程序的内部源码….

下面开始言归正传:

Android的应用程序是由两部分组成的.

1.*.class文件

2.*.xml文件  解码时候需要使用到不同的工具…

下面开始介绍*.class(类文件的解码)

需要用到的工具:

dex2jarJD-GUI

dex2jar下载地址:http://laichao.googlecode.com/files/dex2jar-0.0.7-SNAPSHOT.zip

JD-GUI下载地址:
windows版JD-GUI:
http://laichao.googlecode.com/files/jdgui.zip
Linux版JD-GUI:http://laichao.googlecode.com/files/jd-gui-0.3.2.linux.i686.tar.gz

A:将*.apk文件的后缀修改成*.zip,然后解压,会在文件夹内发现一个叫classes.dex的文件

B:将dex2jar解压后放到C盘根目录,然后将classe.dex放到这个文件夹中来

然后在开始运行中输入CMD,

将路径定位到dex2jar.bat所在的文件夹(dex2jar.bat为dex2jar解压后文件夹内存在的一个*.BAT文件)

然后输入:dex2jar.bat classes.dex

(这里有可能会报错,如果报错好好看一下JAVA的环境变量是什么,配置的对不对)

C:如果一切正常就会解码出来一个*.jar文件

D:用刚才提及到的JD-GUI来解码*.jar文件 (windows环境的直接拖上去可以)

E:很多公司开发出来的源码都是修改了类名,方法名的- -这个比较恶心,也没有什么好办法,只能费点眼神仔细看了….

下面是*.xml文件的解码

需要用到的工具:

apktool1.4.1.tar.bz2

apktool-install-windows-r04-brut1.tar.bz2

这两个工具可以在Google官方提供的URL地址:http://code.google.com/p/Android-apktool/

上下载

然后解压,

A:两个压缩包内的所有文件都要放在同一个路径下,本人放的还是C盘根目录

B:将需要解码的*.apk文件放到和步骤A中解压的文件相同的路径下(本人放的依旧是C盘根目录)

C:开始—>运行输入CMD,然后定位到C盘,在命令提示框内输入:apktool d C:\*.apk  C:\***

(*.apk为需要解码的应用程序,***为文件夹名称)

D:解码后就能清晰的看到程序内所有用到的*.XML文件啦…包括布局文件和AndroidManifest.xml文件

^_^

赞(0) 打赏
分享到: 更多 (0)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏