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