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

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

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

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

Изменения в командных кнопках

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

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

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

Remote Playback 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-производители должны учитывать это изменение режима работы по умолчанию, поскольку оно влияет на то, как генерируются элементы управления мультимедиа для приложений. Производители оригинального оборудования также должны убедиться, что новый системный API работает в переключателе вывода.

Производителям устройств не нужно ничего менять. Они могут использовать реализацию по умолчанию в AOSP.

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

Если у OEM есть системное приложение, которое публикует уведомления о воспроизведении удаленного медиаконтента, оно может вызывать функцию setRemotePlaybackInfo для уведомлений, если ему предоставлено разрешение MEDIA_CONTENT_CONTROL. Однако это не обязательно, и партнер может не настраивать ее.

Проверка элементов управления мультимедиа

Чтобы проверить элементы управления мультимедиа в интерфейсе системы, выполните ручное тестирование и убедитесь, что:

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

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

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