Controles de contenido multimedia en la IU del sistema

A partir de Android 13, los controles multimedia de la IU del sistema contienen actualizaciones de los botones de acción y la reproducción remota. Estos cambios admiten una experiencia de control de contenido multimedia más prolija en teléfonos y tablets, y ofrecen transferencias fluidas entre dispositivos.

Actualizaciones de los controles multimedia

En esta sección, se describen las actualizaciones realizadas en los controles multimedia de Android 13 para los botones de acción y la reproducción remota.

Cambios en el botón de acción

Para garantizar que los usuarios puedan acceder a un conjunto enriquecido de controles multimedia para las apps que reproducen contenido multimedia, los botones de acción de los controles multimedia para Android 13 se derivan de los estados de acción de PlaybackState. Con este cambio, la función MediaDataManager#createActionsFromState genera información sobre el botón de acción según el estado de la acción PlaybackState. Esto se alinea con la forma en que se renderizan los controles multimedia en otras plataformas de Android, como Auto, Asistente y Wear.

En cambio, en Android 12, los botones de acción en los controles multimedia se determinaban según las acciones de notificación agregadas a una notificación de MediaStyle.

Para obtener un resumen de los cambios compatibles con la app en las actualizaciones del botón de acción, consulta StatusBarManager.

API de reproducción remota

Para ofrecer una experiencia multimedia coherente en una variedad de plataformas, a partir de Android 13, se agrega una nueva API del sistema Notification#setRemotePlaybackInfo para marcar las notificaciones multimedia en la IU del sistema de controles multimedia para la reproducción remota. Esta API permite que las apps del sistema que publican las notificaciones hagan lo siguiente:

  • Proporciona información y funcionalidad para los medios que se originan en un dispositivo remoto al selector de salida predeterminado en el control de medios.
  • Reemplaza la ayuda visual del selector de salida si es necesario.

Las apps del sistema que usan esta notificación deben tener el permiso MEDIA_CONTENT_CONTROL.

La API de Notification#setRemotePlaybackInfo también agrega los siguientes extras para determinar el nombre, el ícono y el intent del dispositivo de reproducción remota:

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

Con esta información, la IU del sistema puede reemplazar la información predeterminada del dispositivo del selector de salida y agregar el control de reproducción remota al final de la lista de controles multimedia locales.

Implementación del control multimedia

Los OEM deben tener en cuenta este cambio en el comportamiento predeterminado, ya que afecta la forma en que se generan los controles multimedia para las apps. Los OEM también deben asegurarse de que la nueva API del sistema funcione según corresponda en su opción de cambio de salida.

No es necesario que los OEM realicen ningún cambio, y pueden usar la implementación predeterminada en el AOSP.

Personalización de la reproducción remota

En los casos en que el OEM tenga una app del sistema que publique notificaciones de reproducción de contenido multimedia remoto, la app puede llamar de forma opcional a setRemotePlaybackInfo para la notificación, siempre que se le haya otorgado el permiso MEDIA_CONTENT_CONTROL. Sin embargo, esto no es un requisito, y el socio puede optar por no realizar la personalización.

Validación del control multimedia

Para probar el control multimedia en la IU del sistema, ejecuta una prueba manual para validar lo siguiente:

  • Los botones funcionan según lo previsto mientras se reproduce contenido multimedia desde una app.
  • El selector de salida muestra la información correcta del dispositivo.

Usa las siguientes pruebas para validar la API de reproducción remota:

Consulta el nuevo requisito de CDD [3.8.3.1/H-1-SR] para obtener recomendaciones.