关于Android的反编译apk文件
学习也要借鉴,最近在学习Android,想看一下市面上大的Android应用是怎么个构架的,所以学习了下Android反编译的相关知识,网上有很多种做法,下面的是我在几种方案中觉得效果最好的方案介绍一下:
(事先声明本文仅供学习之用,若存在任何侵权马上删除)
?
首先Android的apk包也是可以解压的,把它改成后缀RAR的就能直接用RAR解压了,得到的文件如下图:

其中res为资源文件夹,而下面的AndroidManifest.xml和classes.dex则是我们这次反编译的重点。
?
AndroidManifest.xml也被编译过了。。。哎。。这编译连XML文件都没放过,而classes.dex就是Android的Jar包的复刻版了,现在要分两步走:
?
一、xml方面
?
市面上也有好多反编译方法,经我实践用AXMLPrinter2.jar(http://android4me.googlecode.com/files/AXMLPrinter2.jar)反编译出来的XML文件最清晰。
?
命令:java -jar AXMLPrinter2.jar AndroidManifest.xml > AndroidManifest.txt
?

?
代码片段如下:
?
可以看到在文件夹里出现了一个classes.dex.dex2jar.jar这个jar包
?
接下来就可以看jar包的工具直接打开了,这里推荐一款jd-GUI的查看软件(http://java.decompiler.free.fr/jd-gui/downloads/jd-gui-0.3.3.windows.zip)。
下面是效果:
?
?
?
仅供学习哈~~