IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> Android classloader 加载 -> 正文阅读

[移动开发]Android classloader 加载

Java虚拟机 ?是基于栈的虚拟机 ?

Apt dalvik 虚拟机 是基于寄存器的虚拟机

什么是栈虚拟机 ??每一个运行的线程都有一个独立的栈,每个方法成为一个栈帧 ,基于虚拟机的栈是通过栈帧里面的操作数栈来进行所有操作

什么是寄存器 ??

寄存器是cpu的一部分 ?是个存贮单元,可暂存指令和数据

寄存器虚拟机的分类

Dalvik 是字节码解释执行 和JIT(just in Time)即时编译 一起的 ??dexopt操作将dex

字节码优化转化成odex文件

APT ??是通过dex2oat操作 将dex字节码直接转化成当前手机的机器码

?

Android N 以上的操作是进行混编 ?即时编译 ?jit ?加上ART

如果执行ART操作的话 ??安装app的时候需要将dex字节码文件进行转化为机器码 这样安装apk速度太慢 ,所以7.0之后就用混合编译 ?开始还是用dalvik加载jit进行操作 jit编译过的方法记录在一个配置文件里面 ??在设备闲置充电的时候 ?在后台启用个线程进行dex2oat 进行 转化本地机器码操作 ??

Android类加载机制 classloader

?

?

双亲委托机制

  1. 避免重复加载
  2. 安全性考虑 禁止改freamewoke层的代码 ?例如: ??自定义String类和系统的String类型一样的,如果没有双亲委托机制 ?就有可能调用自己的string类的 那么就修改了系统源码的了

?

下面两张图 是介绍 dexElements怎么来的 Dexpathlist构造函数中传入的dex地址 ?MakepathElement方法通过传入的地址 得到dexElements 是个数据 每个element相当于个dex文件

类加载 时序图

?Android ?29 ??10以及以上版本 ?

当Android10 以及以上版本时候保存文件等就不能直接当道sdcrad中了,需要分区权限

解决上面的问题 ?有两种方法 ?

第一种 ?: ???android:requestLegacyExternalStorage="true" 在application中增加前面的代码 ?禁止禁止分区操作

第二种 :放到私有目录 ?也就是 sdcard中 ?Android/data/应用包名路径

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-08-19 12:09:56  更:2021-08-19 12:11:23 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 9:44:29-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码