Criar apps de vídeo para o Android Automotive OS

Além das diretrizes descritas em Criar apps do Android Automotive OS para carros estacionados, há alguns requisitos específicos para apps de vídeo.

Marcar como um app de vídeo

Para indicar que o app é de vídeo, adicione o atributo android:appCategory="video" ao elemento <application> do manifesto.

<manifest ...>
    ...
    <application
      ...
      android:appCategory="video">
        ...
    </application>
</manifest>

Compatibilidade com o recurso Áudio ao Dirigir

O recurso Áudio ao Dirigir é uma versão Beta
A publicação de apps compatíveis com o recurso Áudio ao Dirigir é limitada a parceiros com acesso antecipado. Enquanto esse recurso estiver na versão Beta, siga as orientações desta seção para preparar seu app.

Em geral, todos os apps de vídeo precisam pausar a reprodução quando as restrições de experiência do usuário estiverem ativas, conforme descrito em Atender aos requisitos de distração do motorista.

No entanto, alguns veículos podem mostrar controles de reprodução otimizados para direção enquanto as restrições de experiência do usuário estão ativas, permitindo continuar a reprodução de áudio.

Controles de reprodução otimizados para direção em um app compatível com o recurso Áudio ao Dirigir.
Figura 1: controles de reprodução otimizados para um app que oferece suporte a áudio enquanto você dirige.

Declarar que o app é compatível com o recurso Áudio ao Dirigir

Para indicar que o app é compatível com o recurso Áudio ao Dirigir, adicione o seguinte elemento <uses-feature> ao manifesto:

<application ...>
    ...
    <uses-feature android:name="com.android.car.background_audio_while_driving" android:required="false">
    ....
</application>

Oferecer compatibilidade com a reprodução em segundo plano

Como as atividades do app ficam ocultas pelas restrições de UX do sistema, ele precisa oferecer suporte à reprodução em segundo plano para continuar tocando áudio enquanto você dirige. Consulte Reprodução em segundo plano com um MediaSessionService para detalhes sobre como fazer isso usando a biblioteca Media3.

O app precisa postar uma notificação MediaStyle que inclua o MediaSession do app. Se você estiver usando MediaSessionService, isso será processado para você por padrão.

Determinar o suporte

Para determinar se um dispositivo é compatível com áudio durante a condução, use a classe CarFeatures da biblioteca androidx.car.app:app.

CarFeatures.isFeatureEnabled(context, CarFeatures.FEATURE_BACKGROUND_AUDIO_WHILE_DRIVING)

Use essas informações para modificar o comportamento do app dependendo dos recursos do dispositivo em que ele está sendo executado. Em dispositivos que não são compatíveis com o recurso Áudio ao Dirigir, o app ainda precisa obedecer à diretriz DD-2.

Testar o áudio enquanto dirige

Para testar sua implementação, simule a direção usando uma imagem do emulador que ofereça suporte a áudio enquanto dirige.

Perguntas frequentes

Há suporte para o DRM da Widevine?

Sim, o Android Automotive OS oferece suporte ao Widevine DRM L3.