Иногда бывает сложно определить, где кроется проблема с производительностью и какой код следует оптимизировать. Начните с использования инструментов, которые помогут сузить область поиска проблемы.
Инспектор макетов
Используйте инспектор макетов для проверки макета и просмотра количества рекомпозиций.
Низкая производительность пользовательского интерфейса часто связана с ошибкой в коде, которая приводит к необходимости его многократной перекомпоновки. С другой стороны, некоторые ошибки в коде могут помешать перекомпоновке пользовательского интерфейса в нужный момент, и изменения в нём не будут отображаться на экране. Отслеживание перекомпоновок может помочь обнаружить обе эти проблемы.
Перекомпозиция сама по себе неплоха, однако неожиданная перекомпозиция может стать проблемой.
Более подробную информацию см. в документации по счетчикам перекомпоновки в инспекторе макетов.
Трассировка композиции
Используйте трассировку композиции для отслеживания компонуемых функций в системной трассировке. Трассировки часто являются лучшим источником информации при первом рассмотрении проблемы производительности. Они позволяют сформулировать гипотезу о сути проблемы и определить, с чего начать поиск.
Дополнительные ресурсы
- Руководство по производительности приложений : откройте для себя передовые практики, библиотеки и инструменты для повышения производительности на Android.
- Проверка производительности : проверка производительности приложения.
- Бенчмаркинг : оценка производительности приложений.
- Запуск приложения : Оптимизация запуска приложения.
- Базовые профили : понимание базовых профилей.