Элементы управления мультимедиа в пользовательском интерфейсе системы

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

Обновления в средствах управления мультимедиа

В этом разделе описаны обновления, внесенные в элементы управления мультимедиа в Android 13 для кнопок действий и удаленного воспроизведения.

Изменения в кнопке действия

Чтобы гарантировать, что пользователи могут получить доступ к богатому набору элементов управления мультимедиа для приложений, воспроизводящих мультимедиа, кнопки действий на элементах управления мультимедиа для Android 13 являются производными от состояний действий PlaybackState . Благодаря этому изменению функция MediaDataManager#createActionsFromState генерирует информацию о кнопке действия на основе состояния действия PlaybackState . Это соответствует тому, как элементы управления мультимедиа отображаются на других платформах Android, таких как Auto, Assistant и Wear.

Напротив, в Android 12 кнопки действий на элементах управления мультимедиа определялись действиями уведомлений, добавленными в уведомление MediaStyle .

Сводную информацию об изменениях, совместимых с приложениями для обновлений кнопок действий, см. в StatusBarManager .

API удаленного воспроизведения

Чтобы обеспечить единообразное взаимодействие мультимедиа на различных поверхностях, начиная с Android 13, добавляется новый системный API Notification#setRemotePlaybackInfo позволяющий отмечать мультимедийные уведомления в пользовательском интерфейсе системы управления мультимедиа для удаленного воспроизведения. Этот API позволяет системным приложениям, публикующим уведомления, выполнять следующие действия:

  • Предоставляйте информацию и функции для мультимедиа, исходящего с удаленного устройства, на переключатель вывода по умолчанию на средстве управления мультимедиа.
  • При необходимости замените выходной переключатель.

Системные приложения, использующие это уведомление, должны иметь разрешение MEDIA_CONTENT_CONTROL .

API Notification#setRemotePlaybackInfo также добавляет следующие extras для определения имени, значка и назначения устройства удаленного воспроизведения:

  • Notification#EXTRA_MEDIA_REMOTE_DEVICE
  • Notification#EXTRA_MEDIA_REMOTE_ICON
  • Notification#EXTRA_MEDIA_REMOTE_INTENT

С помощью этой информации системный пользовательский интерфейс может заменить информацию об устройстве микросхемы выходного переключателя по умолчанию и добавить элемент управления мультимедиа для удаленного воспроизведения в конец списка локальных элементов управления мультимедиа.

Осуществление медиа-контроля

OEM-производители должны знать об этом изменении поведения по умолчанию, поскольку оно влияет на создание элементов управления мультимедиа для приложений. OEM-производители также должны убедиться, что новый системный API работает в соответствии с возможностями их выходного коммутатора.

OEM-производителям не требуется вносить какие-либо изменения, и они могут использовать реализацию по умолчанию в AOSP.

Настройка удаленного воспроизведения

В тех случаях, когда у OEM-производителя есть системное приложение, которое отправляет уведомления об удаленном воспроизведении мультимедиа, приложение может дополнительно вызвать setRemotePlaybackInfo для уведомления, если ему предоставлено разрешение MEDIA_CONTENT_CONTROL . Однако это не является обязательным требованием, и партнер может отказаться от настройки.

Проверка контроля над СМИ

Чтобы протестировать управление мультимедиа в системном пользовательском интерфейсе, запустите ручной тест, чтобы проверить следующее:

  • Кнопки функционируют должным образом при воспроизведении мультимедиа из приложения.
  • Выходной переключатель отображает правильную информацию об устройстве.

Используйте следующие тесты для проверки API удаленного воспроизведения:

Рекомендации см. в новом требованию CDD [3.8.3.1/H-1-SR].