微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

什么是Android中的.dex文件?

我有一些关于dex文件的问题

>什么是Android中的dex文件
> dex如何为Android工作?
>它们如何用于调试Android应用程序?
>它们与java类文件类似吗?

我需要具体的信息请帮忙,欢迎任何真实的例子!

解决方法:

关于.dex文件

Dalvik虚拟机(Android系统下的主力)最显着的特点之一是它不使用Java字节码.相反,引入了一种名为DEX的本地格式,甚至字节码指令也与Java字节码指令相同.

Compiled Android application code file.

Android程序被编译成.dex(Dalvik可执行文件)文件,这些文件又被压缩成设备上的单个.apk文件.可以通过自动转换用Java编程语言编写的编译应用程序来创建.dex文件.

Dex文件格式:

 1. File Header
 2. String Table
 3. Class List
 4. Field Table
 5. Method Table
 6. Class DeFinition Table
 7. Field List
 8. Method List
 9. Code Header
10. Local Variable List

Android有关于Dalvik可执行格式(.dex文件)的文档.您可以在官方文档中找到更多信息:Dex File Format

.dex文件类似于java类文件,但它们是在较旧的Android版本的Dalkvik虚拟机(DVM)下运行,并在设备上安装时编译为在较新的Android版本上使用ART的本机代码.

你可以使用android-sdk中提供的dexdump工具反编译.dex.

还有一些逆向工程技术可以从.dex文件生成jar文件java类文件.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐