Save the date! Android Dev Summit is coming to Sunnyvale, CA on Oct 23-24, 2019.

Descripción general de la app de audio

La arquitectura preferida para una app de audio es un diseño de cliente y servidor. El reproductor y su sesión multimedia se implementan dentro de un MediaBrowserService, y la IU y el controlador de medios residen dentro de una actividad Android junto con un MediaBrowser.

Actividad de audio y BrowserService

Un MediaBrowserService proporciona dos funciones principales:

  • Cuando usas un MediaBrowserService, otros componentes y aplicaciones que tengan un MediaBrowser pueden detectar tu servicio, crear su propio controlador de medios, conectarse a tu sesión multimedia y controlar el reproductor. Así es como las aplicaciones de Wear OS y Android Auto obtienen acceso a tu aplicación multimedia.
  • También proporciona una API de navegación opcional. No es necesario que las aplicaciones usen esta característica. La API de navegación permite a los clientes consultar el servicio y crear una representación de su jerarquía de contenido, que podría representar listas de reproducción, una biblioteca multimedia u otro tipo de colección.
Compilar un servicio de navegador multimedia
Cómo crear un servicio de navegador multimedia que contenga una sesión multimedia, administre las conexiones del cliente y se convierta en un servicio en primer plano mientras se reproduzca audio.
Compilar un cliente de navegador multimedia
Cómo crear una actividad cliente para el navegador multimedia que contenga una IU y un controlador multimedia, y se conecte y comunique con un servicio de navegador multimedia.
Callbacks de la sesión multimedia
Se describe la forma en que los métodos de callback de la sesión multimedia administran la sesión multimedia, el servicio de navegador multimedia y otros componentes de la app, como las notificaciones y los receptores de emisiones.
android-MediaBrowserService
Este ejemplo de GitHub muestra cómo implementar una app multimedia que permita la reproducción de audio en segundo plano y proporcione una biblioteca multimedia que esté expuesta a otras apps.