Android 性能优化

请按照本部分中的说明操作,以确保您的 Android 设备能够最大限度地减少资源消耗并优化性能。您可以使用评估性能中所述的多种测试和工具来充分利用 Android。

APK 缓存

本文档介绍了如何设计 APK 缓存解决方案,以在支持 A/B 分区的设备上快速安装预加载的应用。OEM 可以将预加载应用和热门应用放置在 APK 缓存中(对于采用 A/B 分区的新设备而言,这种缓存会存储在通常为空的 B 分区中),而且这样不会影响面向用户的任何数据空间。

启动时间

Android 8.0 支持一系列组件的多项改进,因而可以缩短启动时间。本文档提供了有关缩短特定 Android 设备的启动时间的合作伙伴指南。

运行状况

Android 9 引入了从 health@1.0 HAL 升级的主要版本 android.hardware.health HAL 2.0。这一新版 HAL 使框架代码和供应商代码之间的区别更加清楚,供应商对运行状况信息报告进行自定义的自由度更高,并提供了更多设备运行状况信息(不仅包括电池信息)。

lowmemorykiller

用户空间 lmkd 进程可实现相同的功能,但它是通过现有的内核机制来检测和估测内存压力。该进程使用内核生成的 vmpressure 事件来获取关于内存压力级别的通知。

配置文件引导的优化

Android 编译系统支持在具有蓝图编译规则的原生 Android 模块上使用 Clang 的配置文件引导优化 (PGO)。

任务快照

任务快照是在 Android O 中引入的基础架构,可将窗口管理器中的最近任务缩略图和已保存 Surface 这两者的屏幕截图进行合并。最近任务缩略图会在“最近”视图中呈现任务的最后状态。

预写日志

Android 9 引入了 SQLiteDatabase 的一种特殊模式,称为“兼容性 WAL(预写日志记录)”,它允许数据库使用 journal_mode=WAL,同时保留每个数据库最多创建一个连接的行为。