Mémoire Android

Les pages suivantes fournissent des informations sur l'amélioration de l'utilisation de la mémoire par votre application.

Conseils généraux sur la mémoire

Informations générales sur la mémoire
Explique l'architecture de mémoire Android de base, les contraintes de RAM et la façon dont le système d'exploitation équilibre les processus à l'aide du Low Memory Killer (LMK).
Gestion de la mémoire
Présente les bonnes pratiques pour les développeurs concernant la libération des ressources tout au long des cycles de vie des composants, l'évitement des fuites et la gestion de la mémoire lors du passage d'un état de processus à un autre.
Comprendre et résoudre les problèmes de mémoire Android
Fournit une vue d'ensemble complète de l'architecture de mémoire Android, des outils disponibles pour l'analyse et des exercices pratiques pour vous aider à identifier et à résoudre les problèmes liés à la mémoire.
Définir des budgets de mémoire pour les applications
Explique comment déclarer et gérer les budgets de mémoire d'application pour réduire l'utilisation de la mémoire à l'ensemble de travail actif de votre application.

Optimisations spécifiques à une zone

Présentation de la mémoire des jeux
Détails sur la budgétisation de la mémoire, la gestion de l'allocation native et des conseils sur la gestion des ressources graphiques spécialement conçus pour les applications utilisant des moteurs de jeu.
Optimiser les images bitmap
Montre comment dimensionner, décoder et mettre en cache efficacement les composants bitmap dans les bibliothèques d'images.
Gérer et diagnostiquer la mémoire WebView
Explique le modèle de mémoire multiprocessus WebView, décrit comment gérer correctement son cycle de vie pour éviter les fuites et fournit des workflows pratiques pour diagnostiquer les problèmes de mémoire.
Optimisation du code R8
 Explique comment utiliser R8 pour réduire la taille des APK, la surcharge de métadonnées et la consommation de mémoire d'exécution.

Outils de débogage de la mémoire locale

Outils Android Studio
Fournit des workflows d'inspection du tas en temps réel, de suivi de l'allocation de mémoire et de détection des fuites directement dans l'IDE.
Explorateur de vidages du tas Perfetto
Offre une analyse visuelle approfondie des vidages du tas de mémoire natifs et Java ou Kotlin pour isoler les arborescences d'objets retenus et les allocations de mémoire anonymes.
Capturer une trace système sur un appareil
Explique comment enregistrer des traces au niveau du système sur l'appareil pour résoudre les bugs liés aux performances dans votre application.
Déboguer l'utilisation de la mémoire sur Android
 Explique comment comprendre la gestion de la mémoire Linux et utiliser des outils tels que dumpsys meminfo, Perfetto, les profils de tas natifs et les vidages de tas pour suivre l'utilisation de la mémoire et identifier les fuites.

Outils de mémoire de niveau production

Android Vitals : utilisation de la mémoire (RSS anonyme + espace d'échange)
Android Vitals partage l'utilisation de la mémoire de production de votre application, ventilée par états de processus : service de premier plan, service de premier plan et service d'arrière-plan.
Android Vitals : utilisation de la mémoire bitmap
Android Vitals fournit des métriques sur l'espace mémoire utilisé par les bitmaps d'une application en agrégeant les données des appareils Android.
Android Vitals : optimisation du code DEX
Android Vitals peut vous alerter lorsque les niveaux d'optimisation du code DEX de votre application sont faibles. Cela inclut l'obscurcissement, la minification et l'optimisation pour les applications et les jeux qui utilisent R8.
Crashlytics 20.1.0
Affiche les exceptions de production liées à un manque de mémoire (OOM) et les arrêts du limiteur de mémoire avec un contexte de diagnostic pour hiérarchiser et corriger les plantages de champs.
ProfilingManager
API avancée qui permet aux applications de collecter et d'importer de manière programmatique des vidages et des profils de tas de production à partir de sessions utilisateur en direct.

Ressources supplémentaires

Pour en savoir plus sur la mémoire, consultez les ressources supplémentaires suivantes :

Articles de blog

Vidéos