APK文件反编译查看java源码过程
2012-01-04 19:30
218 查看
先说一下apk的结构。APK采用了zip格式的压缩,我们可以很容易解压。
一个APK文件结构为:
META-INF\ Jar文件中常可以看到
res\ 存放资源文件的目录
AndroidManifest.xml 程序全局配置文件
classes.dex Dalvik字节码
resources.arsc 编译后的二进制资源文件
apk下的文本文件是做了二进制处理的。
如果我们只是想看APK 的Manifest信息。可以使用aapt命令。
命名格式为:
aapt dump badging *.apk (这里*.apk是你的apk名)
aapt命令我们可以在SDK下对应版本下的tools文件夹下找到:
这个是我的路径:C:\android-sdk-windows\platforms\android-7\tools
如果是res目录下的文件,则需要用工具来读取并生成文本文件,android4me的AXMLPrinter2是个很好的选择。
下载地址:
http://code.google.com/p/android4me/downloads/detail?name=AXMLPrinter2.jar&can=2&q=
使用方法:
java –jar AXMLPrinter2.jar capture.xml > test.xml
执行后,将标准输出capture.xml到test.xml文件。
下面我们开始反编译代码部分。反编译代码需要两个工具:
dex2jar,用于将dex文件转换为jar文件;
jd-gui,将jar文件反向工程为java代码。
dex2jar的地址:http://code.google.com/p/dex2jar/
下载后解压,dex2jar 的命令使用:
dex2jar.sh classes.dex
命令执行后,会在该文件夹下生成一个classes.dex.dex2jar.jar的文件。
jd-gui分windows,mac,linux三个版本。我们下载对应版本。
jd-gui的地址:http://java.decompiler.free.fr/?q=jdgui
下载后解压,点执行文件。把刚才dex2jar生成的jar文件拖入jd_gui界面即可生成源代码。
附手机中安装过的程序导出方式:
将apk文件拷贝至sdcard上。命令顺序如下:
* 进入Android sdk文件夹/tools目录下
* 输入adb shell
* 输入su
* 输入cd data
* 输入cd app
这时就可以看到你安装的所有的apk文件。输入cp 空格 对应的apk 空格 /sdcard/
这样就将apk文件拷贝出来了。
将apk文件后缀直接变成rar格式,可以看到熟悉的目录结构了。
本文出自http://blog.csdn.net/take_all/article/details/7163656
一个APK文件结构为:
META-INF\ Jar文件中常可以看到
res\ 存放资源文件的目录
AndroidManifest.xml 程序全局配置文件
classes.dex Dalvik字节码
resources.arsc 编译后的二进制资源文件
apk下的文本文件是做了二进制处理的。
如果我们只是想看APK 的Manifest信息。可以使用aapt命令。
命名格式为:
aapt dump badging *.apk (这里*.apk是你的apk名)
aapt命令我们可以在SDK下对应版本下的tools文件夹下找到:
这个是我的路径:C:\android-sdk-windows\platforms\android-7\tools
如果是res目录下的文件,则需要用工具来读取并生成文本文件,android4me的AXMLPrinter2是个很好的选择。
下载地址:
http://code.google.com/p/android4me/downloads/detail?name=AXMLPrinter2.jar&can=2&q=
使用方法:
java –jar AXMLPrinter2.jar capture.xml > test.xml
执行后,将标准输出capture.xml到test.xml文件。
下面我们开始反编译代码部分。反编译代码需要两个工具:
dex2jar,用于将dex文件转换为jar文件;
jd-gui,将jar文件反向工程为java代码。
dex2jar的地址:http://code.google.com/p/dex2jar/
下载后解压,dex2jar 的命令使用:
dex2jar.sh classes.dex
命令执行后,会在该文件夹下生成一个classes.dex.dex2jar.jar的文件。
jd-gui分windows,mac,linux三个版本。我们下载对应版本。
jd-gui的地址:http://java.decompiler.free.fr/?q=jdgui
下载后解压,点执行文件。把刚才dex2jar生成的jar文件拖入jd_gui界面即可生成源代码。
附手机中安装过的程序导出方式:
将apk文件拷贝至sdcard上。命令顺序如下:
* 进入Android sdk文件夹/tools目录下
* 输入adb shell
* 输入su
* 输入cd data
* 输入cd app
这时就可以看到你安装的所有的apk文件。输入cp 空格 对应的apk 空格 /sdcard/
这样就将apk文件拷贝出来了。
将apk文件后缀直接变成rar格式,可以看到熟悉的目录结构了。
本文出自http://blog.csdn.net/take_all/article/details/7163656
相关文章推荐
- Android APK反编译查看源码及资源文件
- 反编译apk文件查看源码,反编译apk获取资源
- 使用dex2jar 与xjad 反编译APK文件,查看源码
- apk反编译查看*.java,AndroidManifest.xml,布局xml文件
- Android apk安装过程及Java、JNI读取安装包内assets资源文件的两种方法(附源码实例)
- Android APK反编译查看源码及资源文件
- 反编译apk文件查看源码,反编译apk获取资源
- Android APK反编译查看源码及资源文件
- 如何通过反编译工具与插件 查看java *.class 文件源码
- Android APK反编译查看源码及资源文件
- apk反编译查看*.java,AndroidManifest.xml,布局xml文件
- Android apk安装过程及Java、JNI读取安装包内assets资源文件的两种方法(附源码实例)
- Android APK反编译查看源码及资源文件
- 如何通过反编译工具与插件 查看java *.class 文件源码
- 如何通过反编译工具与插件 查看java *.class 文件源码
- 可视化反编译APK工具,查看部分JAVA代码与全部资源文件。
- Android APK反编译查看源码及资源文件
- Android APK反编译查看源码及资源文件
- 反编译apk生成程序的java源代码和图片、XML配置、语言资源等文件
- Android APK反编译得到Java源代码和资源文件