Выбор ответа Middle Производительность и утечки памяти обновлено
Ускорение холодного старта
Вопрос
Что в первую очередь проверить, если холодный старт приложения занимает 3 секунды?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Тяжёлую инициализацию в Application.onCreate: SDK, база, сеть. Холодный старт включает создание процесса, Application.onCreate, создание Activity и первый кадр.
Варианты ответа
- Тяжёлую инициализацию в
Application.onCreate: SDK, база, сетьправильный ответ - Размер и формат иконки приложения и сплэш-экрана в ресурсах
- Количество модулей Gradle и транзитивных зависимостей в модуле
:app - Версию Kotlin и включён ли компилятор K2 в проекте
Разбор
Холодный старт включает создание процесса, Application.onCreate, создание Activity и первый кадр. Самая частая проблема это синхронная инициализация десятка SDK, открытие базы и чтение настроек на главном потоке до первого кадра. Лечится ленивой и фоновой инициализацией, App Startup, Baseline Profiles. Иконка, число модулей и версия Kotlin на старт почти не влияют.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.