Suivez les instructions de cette section pour vous assurer que vos appareils Android minimisent l'utilisation des ressources et optimisent les performances. Profitez également des nombreux tests et outils décrits dans Évaluer les performances pour tirer le meilleur parti d'Android.
Mise en cache des APK
Ce document décrit la conception d'une solution de mise en cache des APK pour l'installation rapide d'applications préchargées sur un appareil compatible avec les partitions A/B. Les OEM peuvent placer des applications préchargées et populaires dans le cache APK stocké dans la partition B, qui est presque vide, sur les nouveaux appareils partitionnés A/B, sans affecter l'espace de données destiné aux utilisateurs.
Temps de démarrage
Android 8.0 permet de réduire les temps de démarrage en prenant en charge plusieurs améliorations dans différents composants. Ce document fournit des conseils aux partenaires pour améliorer les temps de démarrage de certains appareils Android.
Santé
Android 9 inclut android.hardware.health HAL 2.0, une mise à niveau majeure de la version health@1.0 HAL. Cette nouvelle HAL permet une séparation plus nette entre le framework et le code du fournisseur, une plus grande liberté de personnalisation par le fournisseur dans les rapports sur les informations de santé, et plus d'informations sur l'état de l'appareil que la simple batterie.
Tueur de mémoire faible
Le processus lmkd de l'espace utilisateur implémente la même fonctionnalité, mais avec des mécanismes de noyau déjà existants pour détecter et estimer la pression sur la mémoire. Il utilise les événements vmpressure générés par le noyau pour recevoir des notifications sur les niveaux de pression mémoire.
Optimisation guidée par le profil
Le système de compilation Android permet d'utiliser l'optimisation guidée par profil (PGO) de Clang sur les modules natifs Android qui comportent des règles de compilation Blueprint.
Optimisation du code et des ressources R8
Le système de compilation Android utilise le compilateur R8 pour réduire, optimiser et supprimer le code et les ressources inutilisés des cibles DEX (modules android_app, android_test et java_library installables). Sur les bibliothèques statiques (android_library et java_library statique), Soong utilise le bloc optimize pour associer et exporter les règles de conservation des consommateurs.
Pour en savoir plus sur la configuration de l'optimisation R8 et des règles de conservation, consultez Optimiser le code et les ressources de la plate-forme avec R8.
Instantanés de tâches
Les captures instantanées de tâches sont une infrastructure introduite dans Android 8.0 qui combine les captures d'écran pour les miniatures des applis récentes et les surfaces enregistrées de WindowManager. Les miniatures des éléments récents représentent le dernier état d'une tâche dans la vue "Récents".
Journalisation WAL
Android 9 introduit un mode spécial de SQLiteDatabase appelé "Compatibility WAL" (journalisation write-ahead) qui permet à une base de données d'utiliser journal_mode=WAL tout en conservant le comportement de maintien d'une connexion maximale par base de données.
Gestionnaire NPU
Android 17 et les versions ultérieures sont compatibles avec le gestionnaire NPU (Neural Processing Unit), qui coordonne l'allocation des ressources, hiérarchise les charges de travail et suit l'état d'exécution pour maintenir la stabilité du système et optimiser les performances de l'appareil.