Diretriz da AEP: Media3

Integre a biblioteca Jetpack Media3 como padrão para reprodução, sessões, edição, metadados e extração de frames de mídia para garantir que os apps usem as APIs recomendadas para processar tarefas de mídia complexas em formatos Android. A modernização da arquitetura de mídia pela migração de APIs de framework legadas (como MediaPlayer, MediaMuxer e MediaExtractor) para a biblioteca robusta do Jetpack Media3 oferece um kit de ferramentas unificado e cheio de recursos que garante experiências de mídia consistentes.

Implementação necessária

Para se qualificar para o AEP, seu app precisa obedecer aos seguintes requisitos:

  • Não usar APIs de framework Android legadas, incluindo MediaPlayer, MediaExtractor, MediaMuxer e MediaMetadataRetriever.
  • Se a reprodução for uma jornada principal do usuário, o app precisará integrar sessões de mídia para reconhecimento do SO e integração entre dispositivos.
  • Se o app tiver uma biblioteca de conteúdo de áudio, ele precisará expor o conteúdo pelo MediaLibraryService e implementar suporte para retomada de mídia.

Aplicabilidade das diretrizes

Esta diretriz se aplica a:

  • Apps que oferecem suporte à reprodução de mídia (vídeo ou áudio) ou edição de vídeo.
  • A todos os formatos em que o app está disponível.

Isenções

Os apps podem usar um framework alternativo equivalente que ofereça qualidade, recursos do usuário, estabilidade e compatibilidade semelhantes em todo o ecossistema. Entre em contato com o suporte se você tiver um framework adequado para consideração. Para se qualificar, a implementação alternativa precisa atender aos seguintes critérios de comparação:

  • Em uma rede rápida, o primeiro frame de vídeo precisa ser exibido em até 500 ms após a inicialização do usuário.
  • A reprodução precisa permanecer suave, sem quedas de frame visíveis ou subfluxos de áudio audíveis durante uma janela de 30 segundos.
  • O app precisa gerenciar corretamente a seleção de áudio.
  • O app precisa responder às teclas de mídia de hardware, mesmo quando estiver em execução em segundo plano.
  • Se a reprodução em segundo plano for compatível, o app precisará postar uma notificação no estilo de mídia e usar um serviço em primeiro plano.
  • Se o app oferecer suporte à retomada da reprodução, ele precisará implementar a retomada de mídia.
  • As desconexões de fone de ouvido precisam ser processadas corretamente. Por exemplo, pausar a reprodução em vez de mudar para o alto-falante.
  • A reprodução precisa continuar sem frames descartados ao alternar entre as orientações do dispositivo.

Documentação e recursos de recursos

Os recursos a seguir fornecem orientações de implementação e detalhes técnicos sobre o recurso Media3. Esses recursos são apenas para referência e não contêm outros requisitos do programa.