Взаимодействие с разделенным экраном

В 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

Ниже приведены примеры экранов, демонстрирующие взаимодействие с пользователем при реализации этой функции по умолчанию.

Примеры экранов изменения размера панели запуска

Рисунок 1 . Примеры экранов для изменения размера панели запуска в режиме разделенного экрана.

Выполнение

Хотя Android 8.0 предоставляет эталонную реализацию этого обновления для разделенного экрана, производители устройств сами определяют реализацию этого обновления в своих программах запуска. Чтобы поддержать эту функцию:

  • Внедрите (или имейте уже существующую реализацию) многооконность, соответствующую требованиям документа определения совместимости Android (CDD) для многооконности .
  • Сделайте панель запуска изменяемой по размеру. Эталонная реализация в Launcher3 удаляет названия приложений по мере уменьшения экрана, но реализации могут различаться в зависимости от того, как сжимается программа запуска, особенно если имеется собственный код программы запуска.
  • Установите минимальную указанную высоту в манифесте средства запуска. Для этого измените значение task_height_of_minimized_mode в: frameworks/base/core/res/res/values/dimens.xml

Тестирование

Используйте ручное тестирование, чтобы убедиться, что ваша реализация работает правильно.

  1. Войдите в разделенный экран.
  2. Нажмите Домой .
  3. Обратите внимание на панель запуска с изменяемым размером.

Убедитесь, что размер средства запуска корректно изменяется во всех поддерживаемых ориентациях устройства.