![]()
Уровень 3 — Готовность к адаптации
Конфигурация представляет собой сочетание состояния устройства и состояния системы. Состояние устройства включает ориентацию экрана, размер дисплея, сложенное или разложенное состояние складного устройства, наличие внешней клавиатуры, подключенные дисплеи. Состояние системы включает режимы отображения, такие как многооконный и многоэкранный, а также пользовательские настройки, такие как размер шрифта и язык.
Изменения конфигурации — это изменения состояния устройства или системы: повернутое устройство, измененный размер окна приложения, развернутое устройство, подключенное периферийное устройство или обновленные пользовательские настройки.
Устройства с большим экраном подвергаются тем же изменениям конфигурации, что и телефоны с маленьким экраном, но большие экраны также имеют уникальные особенности конфигурации, такие как:
- Складывание и раскладывание устройства
- Изменение размера окон произвольной формы, аналогичных окнам рабочего стола, в многооконном режиме.
Активный отдых
Android обрабатывает изменения конфигурации приложений, уничтожая и заново создавая активность, которая выполняется при изменении конфигурации. Android воссоздает активность с настройками и ресурсами, соответствующими новой конфигурации.
Разрабатывайте приложения с адаптивным дизайном, поддерживающим широкий диапазон размеров экранов и окон приложений, а также соотношения сторон, и система настройки Android обеспечит оптимальное отображение вашего приложения на больших и маленьких экранах.
Самостоятельное управление конфигурацией
В особых случаях, например, для оптимизации работы конкретного приложения, позвольте вашему приложению самостоятельно обрабатывать изменения конфигурации, вместо того чтобы позволять Android уничтожать и заново создавать активности вашего приложения.
Укажите, какие изменения конфигурации обрабатывает ваше приложение, установив атрибут android:configChanges элемента <activity> в манифесте вашего приложения.
Например, настройте ваше приложение для обработки изменений конфигурации в многооконном режиме:
<activity
android:name=".MyActivity"
android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout" />
Государственное управление
Независимо от того, обрабатывает ли Android изменение конфигурации за вас или вы делаете это самостоятельно, ваше приложение должно сохранять контекст и состояние. После изменения конфигурации пользователи должны иметь возможность возобновить взаимодействие с вашим приложением без нарушения непрерывности и без потери данных, например, когда изменение конфигурации происходит во время воспроизведения мультимедиа или ввода данных, соответственно.
Следующие шаги
Для получения дополнительной информации о том, как обрабатывать изменения конфигурации и обеспечивать непрерывность работы приложения, см. следующие руководства для разработчиков: