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
- Préparer votre application pour des limites de mémoire plus larges
- Priorité à l'efficacité de la mémoire : étapes essentielles pour Android 17