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 los botones 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 PlaybackState
estados de acción.
Con este cambio, la función MediaDataManager#createActionsFromState
genera información de los botones de acción según el estado de acción PlaybackState.
Esto se alinea con la forma en que se renderizan los controles multimedia en otras plataformas de Android, como Auto, Assistant y Wear.
Por el contrario, en Android 12, los botones de acción de los controles multimedia
se determinaban mediante las acciones de notificación
agregadas a una MediaStyle
notificación.
Para obtener un resumen de los cambios compatibles con la app para las actualizaciones de los botones de acción, consulta
StatusBarManager.
API de reproducción remota
Para ofrecer una experiencia multimedia cohesiva en una variedad de superficies, 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 control multimedia para la reproducción remota. Esta API permite que las apps del sistema que publican las notificaciones hagan lo siguiente:
- Proporcionar información y funcionalidad para el contenido multimedia que se origina en un dispositivo remoto al selector de salida predeterminado en el control multimedia
- Reemplazar la opción de 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_DEVICENotification#EXTRA_MEDIA_REMOTE_ICONNotification#EXTRA_MEDIA_REMOTE_INTENT
Con esta información, la IU del sistema puede reemplazar la información del dispositivo de chip del selector de salida predeterminado y agregar el control multimedia para la reproducción remota al final de la lista de controles multimedia locales.
Implementación del control multimedia
Los OEMs 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 OEMs también deben asegurarse de que la nueva API del sistema funcione según corresponda en su indicación visual de selector de salida.
Los OEMs no están obligados a realizar ningún cambio y pueden usar la implementación predeterminada en 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 multimedia remota, la app puede llamar a setRemotePlaybackInfo para la notificación de forma opcional, 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 personalizar.
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:
- Pruebas de CTS en
NotificationManagerTest, comotestMediaStyleRemotePlayback_noPermissionytestMediaStyleRemotePlayback_hasPermission. - Pruebas de unidades en
com.android.systemui.media.
Consulta el nuevo requisito de CDD [3.8.3.1/H-1-SR] para obtener recomendaciones.