1、背景

Android 虚拟机可以识别的是dex文件,应用使用过程中如果每次将dex文件加载进行内存,解释性执行字节码,效率会很低, 严重影响用户体验。所以有必要对dex文件进行优化,通过dex2oat 优化后, 可以在系统运行之前利用合适的时机将dex文件字节码提前转化为虚拟机可以执行运行的机器码,后续直接从效率更高的机器码中运行,则运行阶段更加流畅,优化用户体验。

2、概念

dex2oat (dalvik excutable file to optimized art file) ,是一个对 dex 文件进行编译优化的程序

Android系统进行dex优化的对象既可以是一个dex文件,也可以是一个内部包含dex文件的apk或jar文件

Android dex2oat命令参数解释_joye123的博客-CSDN博客

3、触发场景

dex2oat主要有以下几种触发场景

Android ART dex2oat 浅析 - 内核工匠 - 博客园

4、dex2oat的过程 

剖析 Android ART Runtime (2) – dex2oat - Mingshen Sun

5、规避手段

一篇文章看明白 Android PackageManagerService 工作流程_jeanboy-CSDN博客

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐