dex文件详解

dex文件详解1、基本概念能被DVM虚拟机识别,加载并执行的文件格式2、生成dex文件1、通过IDE自动帮我们build生成2、手动通过dx命令去生成dex文件3、在手机上手动运行dex文件3、使用dx命令来生成dex文件首先得要先配置dx环境变量,这个环境变量怎么配呢?找到的sdk的安装目录,然后进入build-tools目录,这里是你电脑上的所有sdk的安装目录,随便选择一个进去,就可以知道dx.b

大家好,又见面了,我是你们的朋友全栈君。

1、基本概念

能被DVM虚拟机识别,加载并执行的文件格式

2、生成dex文件

1、通过IDE自动帮我们build 生成
2、手动通过dx命令去生成dex文件
3、在手机上手动运行dex文件

3、使用dx命令来生成dex文件

首先得要先配置dx环境变量,这个环境变量怎么配呢?找到的sdk的安装目录,然后进入build-tools目录,这里是你电脑上的所有sdk的安装目录,随便选择一个进去,就可以知道dx.bat,然后将他配置到环境变量中去,就可以使用dx命令了。
先生成java字节码文件
![这里写图片描述](https://img-blog.csdn.net/20170717222550583?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHFfc3E=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
然后生成dex文件
![这里写图片描述](https://img-blog.csdn.net/20170717222812708?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHFfc3E=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast) 
使用adb命令,将文件放到手机上去
![这里写图片描述](https://img-blog.csdn.net/20170717222941672?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHFfc3E=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
执行dex文件,首先得通过adb命令来登陆到手机中,进入手机的控制台,最后通过dalvikvm来执行dex文件
![这里写图片描述](https://img-blog.csdn.net/20170717223459876?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHFfc3E=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)

4、dex文件的作用

记录整个工程中所有类文件的信息,而class文件是一个的类的所有信息

5、dex文件的结构

1、一种8位字节的二进制流文件
2、各个数据按顺序紧密的排列,无间隙
3、整个应用中所有的java源文件都放在一个dex中(不考虑android multidex)

![这里写图片描述](https://img-blog.csdn.net/20170717224700268?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHFfc3E=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)

6、dex文件和class文件的异同

1、本质上他们都是一样的,dex是通过class文件演变而来
2、class文件存在许多冗余的信息,dex去冗余,并整合
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/153524.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • jQuery hover() 方法

    jQuery hover() 方法定义和用法hover()方法规定当鼠标指针悬停在被选元素上时要运行的两个函数。方法触发 mouseenter 和 mouseleave 事件。注意:&#

  • 比较复杂的sql面试题「建议收藏」

    一、分组统计每个班的分数前三名(等同于LeetCode:185. DepartmentTopThreeSalaries)表结构:createtablestudent(idvarchar(20),–编号classvarchar(20),–年级scoreint–分数);insertstudentvalues(‘1′,’一年级’,82);…

  • Cover Letter实用指南

    Cover Letter实用指南1、什么是CoverLetter?指的是投稿信2、coverletter的内容主要包括那些?应该简述所投稿件的核心内容、主要发现和意义,拟投期刊,对稿件处理有无特殊要求等(如“nottoreview”list)。另外,请附上主要作者的中文姓名、通讯地址、电话、传真和e-mail地址。此外有的杂志要求推荐几位审稿人及其联系方式。以及谁已经阅读过该文(当然是牛人)。

  • gitlab注册收不到邮件_matlab收不到邮件

    gitlab注册收不到邮件_matlab收不到邮件gitlab安装在ubuntu系统上(腾讯云上),在/etc/gitlab/gitlab.rb配置发送邮件的邮箱。gitlab_rails[‘smtp_address’]=”smtp.163.com”gitlab_rails[‘smtp_port’]=25gitlab_rails[‘smtp_tls’]=false其他配置略。之前是可以发送邮件的。…

  • pycharm使用技巧及常用快捷键_程序运行快捷键

    pycharm使用技巧及常用快捷键_程序运行快捷键代码运行快捷键序号快捷键作用1ALT+SHIFT+F10选择程序文件并运行代码2ALT+SHIFT+F9选择程序文件并调试代码3SHIFT+F10运行代码4SHIFT+F9调试代码5CTRL+SHIFT+F10运行当前编辑区的程序

  • linux:根据关键字或日期查找日志

    linux:根据关键字或日期查找日志Q:Linux命令,根据关键字查询日志A:1.单个文件可以使用vi或vim编辑器打开日志文件,使用编辑器里的查找功能。在查看模式下,符号/后面跟关键字向下查找,符号?后面跟关键字向上查找,按n查找下一个,按N查找上一个。2.多个文件可以使用grep命令,比如grepERROR/var/log/messages*。会把匹配到ERROR这个关键字的行和所在的日志文件直接输出到屏幕。…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号