02_热修复_插件化_dex和class

2020-10-18  本文已影响0人  lww文

热修复可以解决那些问题?

1:线上bug 2:一些新功能推给 用户

插件化可以解决那些问题?

1:解决应用越来越大带来的技术问题  2;解决合作开发问题

插件化的结构改变

========class/dex 文件的详解

什么是class

能够被jvm 识别 加载并执行的文件格式

=====生成class文件

1:idea 自动build

2;手动 javac 执行 生成   javac Test.java

3:java  执行   java Test的信息


=====class   文件 的作用

记住一个类文件的所有信息

=====class   文件结构

1:一种8字节的二进制 流文件

2:各个数据按顺顺序紧密排列 没有空隙

3  每个类或者接口 都占一个class文件 

查卡结构可以通过  010editor 工具查看

========class 文件弊端

1内存占用大 不适合移动端 

2::栈堆加载模式  加载速度慢

3:文件io查找多 类加载慢

========dex 文件介绍 

什么是dex文件?  

仅能被dvm 识别 并加载的文件格式

====生成dex文件

1:idea 工具 build 生成

2:使用dx 命令生成      dx --dex --output   Test.dex(需要生成的dex文件名) Test.class (被执行的class文件)

3:手动运行dex文件在手机   

1:adb push Test.dex /sdcard    将dex文件 推送到 手机

2: 登录到 手机中  adb  shell

3; 执行命令   dalvikvm -cp /sdacrd/Test.dex Test

dex 的作用

记录整个工程中所有类文件的信息

=====dex 文件结构

1:一种8字节的二进制 流文件

2:各个数据按顺顺序紧密排列 没有空隙

3  所有的java 文件都在 dex文件中

dex和class的异同

1:本质都一样 dex是是从class 演变的

2:class 有冗余信息 dex 去除冗余 整合

上一篇下一篇

猜你喜欢

热点阅读