APEX:开启Android系统新篇章的应用扁平化技术
Android Pony Express (APEX) 是在 Android Q 中引入的一种容器格式,用于安装流程中较低级系统模块的更新。该格式方便了系统组件的更新,这些组件不适合标准的 Android 应用程序模型。一些示例组件包括原生服务和库、硬件抽象层(HALs)、运行时(ART)和类库。
术语 “APEX” 也可以指代 APEX 文件。
背景
尽管 Android 支持通过包安装程序应用(例如 Google Play 商店应用)来更新符合标准应用模型的模块(例如服务、活动),但对于较低级的操作系统组件使用类似的模型存在以下缺点:
- 基于 APK 的模块无法在引导序列的早期使用。包管理器是关于应用程序的信息的中央存储库,并且只能从活动管理器启动,而活动管理器在引导过程的较后阶段变为可用。
- APK 格式(特别是清单)是为 Android 应用程序设计的,而系统模块并不总是适合这种格式。
设计
本部分介绍 APEX 文件格式和 APEX 管理器的高级设计,其中 APEX 管理器是管理 APEX 文件的服务。
APEX 格式
这是 APEX 文件的格式。