Las apps para TV que reproducen audio pueden seguir haciéndolo después de que el usuario regresa a la pantalla principal o cambia a otra app. Para ello, la app debe proporcionar una tarjeta de Está sonando en la página principal en la pantalla. Esta tarjeta les permite a los usuarios comprender de dónde proviene el audio y regresar a tu app para controlar la reproducción de contenido multimedia
Cada vez que se active
MediaSession
es
El framework de Android muestra una tarjeta de Está sonando en la pantalla principal. La carta
incluye metadatos multimedia, como la imagen del álbum, el título y el ícono de la app. Cuando el usuario selecciona la tarjeta,
para que el sistema abra la app.
Tarjeta de Está sonando
Después de implementar una sesión multimedia, configura para activar y solicitar foco de audio, aparecerá la tarjeta Está sonando.
Nota: La tarjeta de Está sonando solo se muestra para un contenido multimedia
con el
FLAG_HANDLES_TRANSPORT_CONTROLS
marca de verificación. Esta marca dejó de estar disponible en el nivel de API 26. Sin embargo, esta marca aún podría ser necesaria en dispositivos más antiguos para la retrocompatibilidad.
La tarjeta se quita de la pantalla del selector cuando
setActive(false)
llamada desactiva la sesión multimedia o cuando otra app inicia la reproducción multimedia. Si la reproducción es
Se detuvo por completo y no hay contenido multimedia activo, desactiva la sesión multimedia.
de inmediato. Si la reproducción está en pausa, desactiva la sesión multimedia después de un retraso.
generalmente de 5 a 30 minutos.
Actualizar la tarjeta
Cada vez que tu app actualiza el estado de reproducción en MediaSession
, se
La tarjeta de Está sonando se actualiza para mostrar el estado del contenido multimedia actual. Para obtener información sobre cómo hacerlo, consulta
Actualiza el estado de reproducción.
De manera similar, tu app puede actualizar la
MediaMetadata
para proporcionar
información en la tarjeta Está sonando sobre el contenido multimedia actual, como el título, el subtítulo,
y varios iconos. Para obtener información sobre cómo hacerlo, consulta
Actualiza los metadatos multimedia.
Cómo responder a la acción del usuario
Cuando el usuario selecciona la tarjeta Está sonando, el sistema abre la app a la que pertenece
sesión. Si tu app proporciona un elemento
PendingIntent
a
setSessionActivity()
,
el sistema inicia la actividad que especificas, como se muestra en el siguiente fragmento de código. Si no es así, di lo siguiente:
se abre el intent predeterminado del sistema. La actividad que especifiques debe proporcionar controles de reproducción que
y permitir que los usuarios pausen o detengan la reproducción.
Kotlin
val pi: PendingIntent = Intent(context, MyActivity::class.java).let { intent -> PendingIntent.getActivity( context, 99 /*request code*/, intent, PendingIntent.FLAG_UPDATE_CURRENT ) } session.setSessionActivity(pi)
Java
Intent intent = new Intent(context, MyActivity.class); PendingIntent pi = PendingIntent.getActivity(context, 99 /*request code*/, intent, PendingIntent.FLAG_UPDATE_CURRENT); session.setSessionActivity(pi);
Casos de uso aceptados
La tarjeta Está sonando solo debe usarse en los casos en que el usuario espera que el audio continúe se reproducen en segundo plano cuando sales de la app. El sonido o la reproducción de video a menos que tu app se integre y cumpla con los requisitos de la función pantalla en pantalla.