На следующих страницах представлена информация об улучшении использования памяти вашим приложением.
Общие рекомендации по запоминанию
- Обзор памяти
- В этом разделе объясняется основная архитектура памяти Android, ограничения оперативной памяти и то, как операционная система балансирует процессы с помощью механизма Low Memory Killer (LMK).
- Управление памятью
- В документе изложены лучшие практики разработчиков по освобождению ресурсов на протяжении всего жизненного цикла компонентов, предотвращению утечек памяти и управлению памятью при переходе между состояниями процесса.
- Понимание и устранение неполадок с памятью Android.
- В книге представлен исчерпывающий обзор архитектуры памяти Android, доступных инструментов для анализа, а также практические упражнения, которые помогут вам выявить и устранить проблемы, связанные с памятью.
Оптимизация по конкретным областям
- Обзор памяти игр
- Подробно описаны принципы распределения памяти, обработки выделения ресурсов и управления графическими активами, разработанные специально для приложений, использующих игровые движки.
- Оптимизация растровых изображений
- Демонстрирует эффективные методы изменения размера, декодирования и кэширования растровых изображений в библиотеках изображений.
- Управление и диагностика памяти WebView
- В книге объясняется модель многопроцессной работы с памятью в WebView, описывается, как правильно управлять ее жизненным циклом для предотвращения утечек, и приводятся практические алгоритмы диагностики проблем с памятью.
- Оптимизация кода R8
- В этом разделе объясняется, как использовать R8 для уменьшения размера APK-файлов, накладных расходов на метаданные и потребления памяти во время выполнения.
инструменты отладки локальной памяти
- инструменты Android Studio
- Обеспечивает проверку кучи в реальном времени, отслеживание выделения памяти и обнаружение утечек памяти непосредственно в среде разработки.
- Perfetto Heap Dump Explorer
- Предлагает углубленный визуальный анализ дампов памяти, полученных с помощью нативных приложений и Java или Kotlin, для выявления деревьев сохраняемых объектов и анонимных выделений памяти.
- Запись трассировки системы на устройстве
- В этом руководстве показано, как записывать трассировку на системном уровне на устройстве для устранения ошибок, связанных с производительностью вашего приложения.
- Отладка использования памяти на Android
- Обучает пониманию управления памятью в Linux и использованию таких инструментов, как dumpsys, meminfo, Perfetto, собственные профили кучи и дампы кучи, для отслеживания использования памяти и выявления утечек.
инструменты памяти производственного уровня
- Основные показатели Android: использование памяти (анонимный RSS + файл подкачки)
- Android Vitals отображает данные об использовании памяти вашим приложением в производственной среде с разбивкой по состояниям процессов: передний план, служба переднего плана и фоновая служба.
- Основные параметры Android: использование памяти для обработки растровых изображений.
- Android Vitals предоставляет метрики по объему памяти, занимаемой приложением в виде битовых карт, путем агрегирования данных с устройств Android.
- Crashlytics 20.1.0
- Обрабатывает исключения Out-Of-Memory (OOM) и срабатывания ограничителей памяти, предоставляя диагностический контекст для определения приоритетов и устранения сбоев в работе приложений.
- Менеджер профилирования
- Расширенный API, позволяющий приложениям программно собирать и загружать дампы памяти и профили памяти из рабочих пользовательских сессий.
Дополнительные ресурсы
Для получения дополнительной информации о памяти см. следующие дополнительные ресурсы:
Сообщения в блоге
- Подготовка вашего приложения к более широким ограничениям по объему памяти.
- Приоритизация использования памяти: основные шаги для Android 17