Los desarrolladores de apps de música pueden usar la Biblioteca de apps para vehículos (CAL) para compilar la interfaz de usuario de su app. Esta biblioteca ofrece una alternativa al método convencional de proporcionar datos a través de MediaBrowserService para que CarMediaApp los renderice.
Las apps multimedia basadas en CAL con plantillas permiten que los desarrolladores personalicen la interfaz de usuario para que coincida con la identidad de su marca. A diferencia de las apps basadas en CAL, las apps de contenido multimedia convencionales que usan MediaBrowserService y CarMediaApp no permiten que los desarrolladores personalicen el estilo de la IU. El OEM controla este estilo.
Los desarrolladores pueden compilar una app de música basada en plantillas que admita Android Auto y el SO Android Automotive (AAOS).
Integrar
La compatibilidad con las apps de música basadas en CAL requiere la integración de la plataforma.
Requisitos previos
Los controles alternativos de la app permiten que las apps reproduzcan audio en segundo plano y, al mismo tiempo, proporcionan controles optimizados para evitar distracciones para controlar ese audio.
Los controles alternativos de la app están disponibles en Car-apps-release-14 y versiones posteriores.
- Permite que las apps reproduzcan audio en segundo plano.
- Permite que las apps que no usan
MediaBrowserServicese controlen a través de una tarjeta de contenido multimedia del sistema.
La plataforma debe declarar la compatibilidad con
com.android.car.background_audio_while_driving.
Cambios en las plataformas
CarMediaApp de la plataforma debe cumplir con lo siguiente:
- Tener permiso para habilitar la actividad CAL de una app de música. Consulta el ejemplo de código.
- Iniciar la actividad CAL en lugar del Centro de contenido multimedia en dispositivos que admiten la función
android.software.car.templates_host.media. Consulta el ejemplo de código.
El selector de automóvil de la plataforma debe cumplir con lo siguiente:
- Mostrar solo un ícono de la app en el Launcher del automóvil después de que
CarMediaApphabilite la actividad CAL de una app multimedia. - Escuchar la transmisión
PACKAGE_CHANGEDy actualizar la lista de apps. Consulta el ejemplo de código.
La tarjeta o el widget de contenido multimedia de la plataforma deben cumplir con lo siguiente:
- Mostrar el audio que se reproduce en la tarjeta de contenido multimedia.
Configuración de compilación
La plataforma debe declarar la compatibilidad con android.software.car.templates_host.media:
<permissions>
<!-- Declare support for templated applications. -->
<feature name="android.software.car.templates_host" />
<!-- This feature indicates that the system supports apps that use the
Car App Library Media category -->
<feature name="android.software.car.templates_host.media"/>
</permissions>
Prueba
Prueba la compatibilidad de la plataforma con las apps de música basadas en CAL usando TestMediaCalApp. TestMediaCalApp es una app de música compilada con la Biblioteca de apps para vehículos que el host de plantillas renderiza en la plataforma.
Instala
TestMediaCalApp.apk.Abre la app llamada Test Media3 CAL App en tu selector:
Figura 1: Prueba la app de CAL de Media3 en el selector de automóvil.
Después de que se inicie la app, vuelve al selector y observa que el nombre de la app cambió a Test Media CAL App. La app anterior llamada Test Media3 CAL App ya no debería estar visible:
Figura 2: Prueba la app de CAL de Media en el selector de automóvil.
Abre Test Media CAL App y reproduce cualquier canción. Para ello, presiona una canción en la playlist:
Figura 3: Vista de la playlist renderizada por el host de la app.
Observa que se abre la vista de reproducción (
MediaPlaybackTemplate):
Figura 4: Vista de reproducción renderizada por el host de la app.
Observa que los metadatos de reproducción se muestran en el widget de contenido multimedia de la pantalla principal:
Figura 5: Tarjeta de contenido multimedia.