As versões mínimas do Android necessárias para os casos de uso principais do ExoPlayer são:
Caso de uso | Número da versão do Android | Nível da Android API |
---|---|---|
Reprodução de áudio | 4.4 | 19 |
Reprodução de áudio (usando a descarga) | 10 | 29 |
Reprodução de vídeo | 4.4 | 19 |
Reprodução de vídeo (com efeitos) | 4.4 | 19 |
Reprodução de vídeo (HDR) | 7.0 | 24 |
DASH (sem DRM) | 4.4 | 19 |
DASH (CENC da Widevine; esquema "cenc") | 4.4 | 19 |
DASH (CENC da Widevine; esquema "cbcs") | 7.1 | 25 |
DASH (ClearKey; esquema "cenc") | 5.0 | 21 |
SmoothStreaming (sem DRM) | 4.4 | 19 |
SmoothStreaming (PlayReady SL2000; esquema "cenc") | Android TV | Android TV |
HLS (sem DRM) | 4.4 | 19 |
HLS (criptografia AES-128) | 4.4 | 19 |
HLS (Widevine CENC; esquema "cenc") | 4.4 | 19 |
HLS (Widevine CENC; esquema "cbcs") | 7.1 | 25 |
Em um determinado caso de uso, nosso objetivo é oferecer suporte ao ExoPlayer em todos os dispositivos Android que atendam ao requisito mínimo da versão. Alguns problemas de compatibilidade específicos do dispositivo conhecidos estão listados abaixo. Os problemas específicos do dispositivo também estão listados no Issue Tracker da Media3 no GitHub ou no Issue Tracker legado do ExoPlayer no GitHub (link em inglês).
- FireOS (versão 4 e anteriores): apesar de tentarmos oferecer suporte aos dispositivos FireOS, o FireOS é uma ramificação do Android e, por isso, não podemos garantir esse suporte. Problemas específicos de dispositivos encontrados no FireOS normalmente são causados por incompatibilidades no suporte oferecido pelo FireOS para a execução de apps Android. Esses problemas precisam ser relatados à Amazon na primeira instância. Estamos cientes dos problemas que afetam o FireOS versão 4 e anteriores. Acreditamos que a versão 5 do FireOS resolve esses problemas.
- Nexus Player (somente ao usar um cabo HDMI para DVI): há um problema conhecido que afeta o Nexus Player somente quando o dispositivo está conectado a um monitor usando um certo tipo de cabo HDMI para DVI, o que faz com que o vídeo seja reproduzido muito rapidamente. O uso de um cabo HDMI para DVI não é realista para uma configuração de usuário final, porque esses cabos não podem transportar áudio. Portanto, esse problema pode ser ignorado com segurança. Sugerimos usar uma configuração de usuário final realista (por exemplo, o dispositivo conectado a uma TV usando um cabo HDMI padrão) para desenvolvimento e testes.
- Emuladores: alguns emuladores Android não implementam corretamente os componentes da pilha de mídia do Android e, como resultado, não oferecem suporte ao ExoPlayer. Esse é um problema com o emulador, não com o ExoPlayer. O emulador oficial do Android ("Virtual Devices" no Android Studio) oferece suporte ao ExoPlayer, desde que a imagem do sistema tenha um nível de API de pelo menos 23. As imagens do sistema com níveis anteriores de API não oferecem suporte ao ExoPlayer. O nível de suporte oferecido por emuladores de terceiros varia. Os problemas ao executar o ExoPlayer em emuladores de terceiros precisam ser informados ao desenvolvedor do emulador, e não à equipe do ExoPlayer. Sempre que possível, recomendamos testar apps de mídia em dispositivos físicos em vez de emuladores.