Что в Android считается изменением конфигурации?

системное изменение, которое влияет на ресурсы UI например, поворот экрана, смена языка или подключение клавиатуры по умолчанию приводит к пересозданию Activity пересоздание требуется, чтобы применить обновлённые…

Короткий ответ

Что ответить на собеседовании

системное изменение, которое влияет на ресурсы UI например, поворот экрана, смена языка или подключение клавиатуры по умолчанию приводит к пересозданию Activity пересоздание требуется, чтобы применить обновлённые ресурсы изменение можно обработать вручную с помощью onConfigurationChanged() это важно для адаптивного и многоязычного интерфейса сказывается на жизненном цикле и сохранении состояния UI

Подробный разбор

Ответ с пояснениями

Что в Android считается изменением конфигурации?

  • системное изменение, которое влияет на ресурсы UI
  • например, поворот экрана, смена языка или подключение клавиатуры
  • по умолчанию приводит к пересозданию Activity
  • пересоздание требуется, чтобы применить обновлённые ресурсы
  • изменение можно обработать вручную с помощью onConfigurationChanged()
  • это важно для адаптивного и многоязычного интерфейса
  • сказывается на жизненном цикле и сохранении состояния UI

Подробный ответ

Основной ответ

Изменение конфигурации в Android — это ситуация, когда система пересоздаёт активити или фрагмент после изменения параметров среды выполнения, способных повлиять на внешний вид и поведение приложения. К таким случаям относятся, например, поворот экрана, смена языка, изменение размера шрифта и подключение внешнего дисплея.

Ключевые моменты

  • Типы событий смены конфигурации: чаще всего меняется ориентация экрана (portrait ↔ landscape), язык (locale) или размер экрана — например, при запуске приложения на планшете либо foldable устройстве. Также конфигурация меняется при появлении клавиатуры и переключении темы (светлой/тёмной).
  • Поведение системы: по умолчанию при смене конфигурации Android уничтожает текущую активити, а затем создаёт её заново, повторно проходя методы жизненного цикла (onDestroy → onCreate). Благодаря этому приложение загружает ресурсы, соответствующие новым условиям, например layout для landscape.
  • Обработка изменений: разработчик может перехватить смену конфигурации через onConfigurationChanged() в манифесте и перечислить необходимые конфигурации с помощью атрибута android:configChanges. Тогда активити не будет автоматически пересоздана, а интерфейс можно обновить вручную.

Практический контекст

В Android 11+ и более новых версиях необходимо учитывать большое количество конфигурационных параметров, особенно при адаптации UI к разным экранам и поддержке мультиязычности. Для сохранения данных между пересозданиями активити из-за смены конфигурации часто применяют ViewModel и сохранение состояния через onSaveInstanceState. Это помогает не терять данные и поддерживать привычный пользовательский опыт.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку