Memória do Android

As páginas a seguir fornecem informações sobre como melhorar o uso de memória do app.

Orientações gerais sobre memória

Visão geral da memória
Explica a arquitetura principal de memória do Android, as restrições de RAM e como o sistema operacional equilibra os processos usando o Low Memory Killer (LMK).
Gerenciamento de memória
Descreve as práticas recomendadas para desenvolvedores ao liberar recursos em ciclos de vida de componentes, evitando vazamentos e gerenciando a memória ao fazer a transição entre estados de processos.
Como entender e resolver problemas de memória do Android
Oferece uma visão geral abrangente da arquitetura de memória do Android, das ferramentas disponíveis para análise e de exercícios práticos para ajudar você a identificar e resolver problemas relacionados à memória.
Definir orçamentos de memória para apps
Explica como declarar e gerenciar orçamentos de memória do aplicativo para reduzir o uso de memória até o conjunto de trabalho ativo do app.

Otimizações específicas da área

Visão geral da memória de jogos
Detalha o orçamento de memória, o processamento de alocação nativa e as orientações de gerenciamento de recursos gráficos adaptadas especificamente para apps que usam mecanismos de jogos.
Otimizar imagens bitmap
Demonstra como dimensionar, decodificar e armazenar em cache recursos de bitmap de maneira eficiente em bibliotecas de imagens.
Gerenciar e diagnosticar a memória do WebView
Explica o modelo de memória multiprocesso do WebView, descreve como gerenciar corretamente o ciclo de vida dele para evitar vazamentos e fornece fluxos de trabalho práticos para diagnosticar problemas de memória.
Otimização de código R8
Explica como usar o R8 para reduzir o tamanho do APK, a sobrecarga de metadados e o consumo de memória em tempo de execução.

Ferramentas de depuração de memória local

Ferramentas do Android Studio
Oferece inspeção de heap em tempo real, rastreamento de alocação de memória e fluxos de trabalho de detecção de vazamentos diretamente no IDE.
Perfetto Heap Dump Explorer
Oferece uma análise visual detalhada de despejos de heap nativos e Java ou Kotlin para isolar árvores de objetos retidos e alocações de memória anônimas.
Capturar um rastreamento do sistema em um dispositivo
Mostra como gravar rastreamentos no nível do sistema no dispositivo para resolver bugs relacionados ao desempenho no seu app.
Como depurar o uso da memória no Android
Ensina como entender o gerenciamento de memória do Linux e usar ferramentas como dumpsys meminfo, Perfetto, perfis de heap nativo e despejos de heap para rastrear o uso da memória e identificar vazamentos.

Ferramentas de memória no nível de produção

Android vitals: uso da memória (RSS anônimo e espaço de troca)
O Android vitals compartilha o uso da memória de produção do app dividido pelos estados do processo em primeiro plano, serviço em primeiro plano e serviço em segundo plano.
Android vitals: uso da memória de bitmap
O Android vitals fornece métricas sobre o consumo de memória de bitmap de um app agregando dados de dispositivos Android.
Android vitals: otimização de código DEX
O Android vitals pode alertar você quando os níveis de otimização do código DEX do app estão baixos. Isso inclui ofuscação, redução e otimização para apps e jogos que usam o R8.
Crashlytics 20.1.0
Mostra exceções de falta de memória (OOM) de produção e encerramentos do limitador de memória com contexto de diagnóstico para priorizar e corrigir falhas de campo.
ProfilingManager
API avançada que permite que os apps coletem e façam upload de despejos de heap e perfis de heap de produção de sessões de usuários ativos de forma programática.

Outros recursos

Para mais informações sobre memória, consulte os seguintes recursos:

Postagens do blog

Vídeos