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去冗余,并整合
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • CheckListBox用法详解

    CheckListBox用法详解1.添加项checkedListBox1.Items.Add(“蓝色”); checkedListBox1.Items.Add(“红色”); checkedListBox1.Items.Add(“黄色”); 2.判断第i项是否选中,选中为true,否则为falseif(checkedListBox1.GetItemChecked(i)){     return tr

    2022年6月17日
    20
  • Modelsim SE 下载安装、注册详细教程「建议收藏」

    目录一、ModelsimSE下载及安装参考资料一、ModelsimSE下载及安装百度网盘下载链接:https://pan.baidu.com/s/1a9d-bq9RZmWrRV542X4IEA——提取码:ifte下载完成后,解压缩win64版的modelsim压缩包。双击可执行文件运行。点击【Next】。选择安装路径,然后点击【Next】。点击【Agree】。正在安装…弹窗添加环境变量,点击【允许】,这样就可以从DOS提示符执行Modelsim了。

    2022年4月10日
    488
  • Python快速入门教程【转】「建议收藏」

    Python快速入门教程【转】「建议收藏」第一章Python基础知识1.1介绍1.1.1特点Python是一种面向对象、解释型计算机程序设计语言。语法简洁清晰,强制用空白符作为语句缩进。Python具有丰富和强大的库,又被称为胶

    2022年7月5日
    19
  • 操作系统实验一进程调度算法模拟_常用的进程调度算法有

    操作系统实验一进程调度算法模拟_常用的进程调度算法有今日闲来无聊,发现很早之前写的操作系统实验还没有整理,再加上有很多人问,索性就发成博客吧。实验一进程调度算法一、实验目的  用高级语言编写和调试一个进程调度程序,以加深对进程的概念及进程调度算法的理解.二、实验指导设计一个有N个进程共行的进程调度程序。  进程调度算法:分别采用先来先服务算法、短作业优先算法、高响应比优先算法实现。  每个进程用一个进程控制块(PCB)表示。…

    2022年9月1日
    5
  • CMD命令实现数字雨

    CMD命令实现数字雨使用cmd命令可以实现类似黑客帝国中的数字雨,这里给出脚本和演示效果:digitalrain.bat@echoofftitledigitalraincolor0bsetlocalENABLEDELAYEDEXPANSIONfor/l%%iin(0)do(set”line=”for/l%%jin(1,1,80)do(set/aDown%%…

    2022年6月9日
    48
  • php 变量名前加一个下划线含义

    php 变量名前加一个下划线含义

    2021年10月21日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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