Apps de mídia com a biblioteca Car App

Os desenvolvedores de apps de mídia podem usar a biblioteca Car App (CAL) para criar a interface do usuário do app. Essa biblioteca oferece uma alternativa ao método convencional de fornecer dados por MediaBrowserService para a renderização do CarMediaApp.

Os apps de mídia com modelos baseados em CAL permitem que os desenvolvedores personalizem a interface do usuário para corresponder à identidade da marca. Ao contrário dos apps baseados em CAL, os apps de mídia convencionais que usam MediaBrowserService e CarMediaApp não permitem que os desenvolvedores personalizem o estilo da interface. Esse estilo é controlado pelo OEM.

Os desenvolvedores podem criar um app de mídia baseado em modelo compatível com o Android Auto e o Android Automotive OS (AAOS).

Integrar

O suporte para apps de mídia baseados em modelos CAL requer integração de plataforma.

Pré-requisitos

Os controles alternativos de apps permitem que eles toquem áudio em segundo plano enquanto oferecem controles otimizados para evitar distrações.

  • Os controles alternativos de apps estão disponíveis no Car-apps-release-14 e em versões mais recentes.

    • Permite que os apps reproduzam áudio em segundo plano.
    • Permite que apps que não usam MediaBrowserService ainda sejam controlados por um card de mídia do sistema.
  • A plataforma precisa declarar suporte para com.android.car.background_audio_while_driving.

Mudanças na plataforma

O CarMediaApp da plataforma precisa:

  • Ter permissão para ativar a atividade de CAL de um app de mídia. Confira um exemplo de código.
  • Inicie a atividade do CAL em vez da Central de mídia em dispositivos compatíveis com o recurso android.software.car.templates_host.media. Confira um exemplo de código.

A Tela de início do carro da plataforma precisa:

  • Mostrar apenas um ícone do app no Car Launcher depois que o CarMediaApp ativa a atividade CAL de um app de mídia.
  • Detecte a transmissão PACKAGE_CHANGED e atualize a lista de apps. Confira um exemplo de código.

O card ou widget de mídia da plataforma precisa:

  • Mostrar o áudio em reprodução no card de mídia.

Configuração do build

A plataforma precisa declarar suporte para 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>

Teste

Teste a compatibilidade da plataforma de teste com apps de mídia baseados em CAL usando TestMediaCalApp. O TestMediaCalApp é um app de mídia criado com a biblioteca Car App, que o host de modelos renderiza na plataforma.

  1. Instale TestMediaCalApp.apk.

  2. Abra o app chamado Test Media3 CAL App no seu acesso rápido:

    Testar o app CAL do Media3 na tela de início do carro

    Figura 1. Teste o app CAL do Media3 no Car Launcher.

  3. Depois que o app for iniciado, volte ao iniciador e observe que o nome do app mudou para Test Media CAL App. O app anterior chamado Test Media3 CAL App não vai mais aparecer:

    Testar o app Media CAL na Tela de início do carro

    Figura 2. Teste o app Media CAL no Car Launcher.

  4. Abra o Test Media CAL App e toque em uma música na playlist para tocar:

    Visualização de playlist renderizada pelo App Host

    Figura 3. Visualização de playlist renderizada pelo App Host.

  5. Observe que a visualização "Tocando agora" (MediaPlaybackTemplate) é aberta:

    Visualização &quot;Tocando Agora&quot; renderizada pelo host do app

    Figura 4.Visualização "Em reprodução" renderizada pelo App Host.

  6. Observe que os metadados do recurso "Tocando agora" aparecem no widget de mídia da tela inicial:

    Card de mídia

    Figura 5. Card de mídia.