В Android 7.0 и более поздних версиях пользователи могут одновременно отображать несколько приложений на экране своего устройства с помощью функции многооконности платформы. Режим по умолчанию — разделенный экран, который предоставляет пользователям две панели действий для размещения приложений.
В Android 8.0 улучшен разделенный экран, усовершенствовав эту функцию и добавив к ней больше функциональности. В реализации по умолчанию, если пользователь нажимает «Домой» после входа в разделенный экран, верхняя панель сжимается, а размер панели запуска изменяется. Это показывает пользователям, что верхнее приложение все еще открыто, сохраняя при этом макет панели запуска, чтобы они могли находить и запускать приложения со своего главного экрана.
Примеры и источник
Эталонная реализация этой новой функциональности находится в коде Launcher3 в /platform/packages/apps/Launcher3/
Эти идентификаторы изменений связаны с реализацией разделенного экрана в Launcher3 и могут служить справкой для производителей устройств, которые хотят внести аналогичные обновления в свои программы запуска.
- Идентификатор изменения:
I48e5cb3bd15e70627d9bf007d93bc731612fba2e
- Идентификатор изменения:
I86753bab5b24aafc417e0f77d8c471fc4c0dc7f0
- Идентификатор изменения:
Id6557d070edb664aa1f4851de7abf494cf8a0677
- Идентификатор изменения:
Icdaf73ecd89a30e57fe7f405292d793f2d6a3ee8
- Идентификатор изменения:
Ie50279f4edb94812120dea492aefa4f18218162f
- Идентификатор изменения:
I6f9ee7be12d3266f021796576c771f86f6120246
- Идентификатор изменения:
I106fe12041565a090047f146a07d4bc80a074b4a
- Идентификатор изменения:
Ibb49c56aab29d1223a0ab36476a32d565566eb25
- Идентификатор изменения:
Id60c793730d982277c9d91860e9fb0e6a0df7d38
- Идентификатор изменения:
I9d358e74ab403989929dee87542d3dde78c2f229
- Идентификатор изменения:
I925d5ac9d29439c5d61cf089e7784065a8cb5ebd
- Идентификатор изменения:
I776c6f710e081645cff891487022cf787869ee3f
- Идентификатор изменения:
I2d17c89db2eb8d60b3393c2abc3b026e5574085d
- Идентификатор изменения:
Id6ee68826c4f3cc579880540812fd8ed834f8267
Пример UX
Ниже приведены примеры экранов, демонстрирующие взаимодействие с пользователем при реализации этой функции по умолчанию.
Выполнение
Хотя Android 8.0 предоставляет эталонную реализацию этого обновления для разделенного экрана, производители устройств сами определяют реализацию этого обновления в своих программах запуска. Чтобы поддержать эту функцию:
- Внедрите (или имейте уже существующую реализацию) многооконность, соответствующую требованиям документа определения совместимости Android (CDD) для многооконности .
- Сделайте панель запуска изменяемой по размеру. Эталонная реализация в Launcher3 удаляет названия приложений по мере уменьшения экрана, но реализации могут различаться в зависимости от того, как сжимается программа запуска, особенно если имеется собственный код программы запуска.
- Установите минимальную указанную высоту в манифесте средства запуска. Для этого измените значение
task_height_of_minimized_mode
в:frameworks/base/core/res/res/values/dimens.xml
Тестирование
Используйте ручное тестирование, чтобы убедиться, что ваша реализация работает правильно.
- Войдите в разделенный экран.
- Нажмите Домой .
- Обратите внимание на панель запуска с изменяемым размером.
Убедитесь, что размер средства запуска корректно изменяется во всех поддерживаемых ориентациях устройства.