Follow the instructions in this section to ensure your Android devices minimize resource use and optimize performance. And take advantage of the many tests and tools described in Evaluating Performance as part of your work getting the most out of Android.
APK caching
This document describes design of an APK caching solution for rapid installation of preloaded apps on a device that supports A/B partitions. OEMs can place preloads and popular apps in the APK cache stored in the mostly empty B partition on new A/B-partitioned devices without impacting any user-facing data space.
Boot times
Android 8.0 allows for reduced boot times by supporting several improvements across a range of components. This document provides partner guidance for improving boot times for specific Android devices.
Health
Android 9 includes android.hardware.health
HAL 2.0, a major version upgrade
from health@1.0 HAL. This new HAL offers cleaner separation between framework
and vendor code, greater degrees of freedom for vendor customization in health
information reports, and more device health information than just battery.
lowmemorykiller
The userspace lmkd
process implements the same functionality but with already
existing kernel mechanisms to detect and estimate memory pressure. It uses
vmpressure events generated by the kernel to get notifications about memory
pressure levels.
Profile-guided optimization
The Android build system supports using Clang's profile-guided optimization (PGO) on native Android modules that have blueprint build rules.
Task Snapshots
Task Snapshots is infrastructure introduced in Android O that combines screenshots for Recents Thumbnails as well as Saved Surfaces from Window Manager. Recents Thumbnails represent the last state of a task in the Recents view.
Write-ahead logging
Android 9 introduces a special mode of SQLiteDatabase called Compatibility WAL
(write-ahead logging) that allows a database to use journal_mode=WAL
while
preserving the behavior of keeping a maximum of one connection per database.