Android TV com Google Cast

Com o lançamento do Android 5.0, vem o Android TV, que é compatível com o Google Cast. Este documento descreve o que você precisa fazer para configurar e testar no Android TV ao desenvolver aplicativos de transmissão. Seu app Cast é executado em Android TV sem esforço adicional. Se você estiver desenvolvendo um aplicativo Cast pela primeira vez, consulte a documentação do Google Cast e desenvolver seu app de transmissão para que ele seja executado em um dispositivo Chromecast antes desenvolver e testar com o Android TV.

Como configurar para desenvolvimento

  1. Configurar o dispositivo Android TV:
    1. Conecte o dispositivo Android TV à rede local.
    2. Faça login na sua Conta do Google.
  2. Em Configurações, na linha Dispositivo, selecione Sobre.
  3. Role para baixo e clique em Build várias vezes até que uma caixa de diálogo apareça. aparece com a mensagem "Você agora é um desenvolvedor".
  4. Se estiver usando depuração USB:
    1. Instale o cabo USB, mas não conecte a extremidade principal do cabo USB ao seu computador.
    2. Na linha Preferências, selecione Opções do desenvolvedor e escolha Depuração USB e selecione Ativado.
  5. Volte para a tela inicial. Isso deve ser feito para aplicar as configurações que você acabou de selecionar. As configurações serão mantidas, a menos que você redefina o dispositivo para a configuração original.
  6. Registre seu dispositivo Android TV no Console para desenvolvedores do SDK do Google Cast, descritos em Registro de dispositivos.

Depuração

Para testar e depurar o aplicativo Receptor da Web no seu dispositivo Android TV, faça o seguinte:

  1. Registre seu dispositivo Android TV e seu aplicativo no Console para desenvolvedores do SDK do Google Cast. Consulte Registro para mais informações sobre como registrar dispositivos e aplicativos.
  2. Inicie o app de envio e transmita para o dispositivo Android TV.
  3. Conecte o dispositivo Android TV usando o adb, conforme descrito em Como usar o Android Debug Bridge.
  4. Na máquina de desenvolvimento, abra uma janela do navegador Chrome e acesse chrome://inspect (link em inglês).
  5. Clique no link inspecionar para levar o receptor da Web para o depurador.
  6. No console do depurador remoto do Google Chrome, ative o registro de depuração digitando o seguinte:

    cast.receiver.logger.setLevelValue(cast.receiver.LoggerLevel.DEBUG);
    

Consulte Depuração para mais informações.

Diretrizes para compatibilidade do Android TV

Tornar seu app do Google Cast compatível com o Android TV exige muito pouco trabalho adicional. Aqui estão algumas recomendações e armadilhas comuns a serem evitadas para garantir que seu aplicativo seja compatível com o Android TV:

  • A string do user agent contém tanto "Android" e "Coverride"; alguns sites podem redirecionar para um site somente para dispositivos móveis porque detectam a "Android" rótulo. Não presuma que "Android" na string do user agent indica um usuário de celular.
  • A pilha de mídia do Android pode usar GZIP transparente para buscar dados. Confirme se seus dados de mídia podem responder a Accept-Encoding: gzip.
  • Os eventos de mídia HTML5 do Android TV podem ser acionados em tempos diferentes dos Chromecast, isso pode revelar problemas que estavam ocultos no dispositivo.
  • Ao atualizar a mídia, use eventos relacionados à mídia disparados por <audio>/<video> elementos, como timeupdate, pause e waiting. Evite usar eventos relacionados à rede, como progress, suspend e stalled, que geralmente dependem da plataforma.
  • Ao configurar os certificados HTTPS do site do receptor da Web, incluem certificados de AC intermediários. Consulte a página de teste de SSL da Qualsys para verificar: se o caminho de certificação confiável do seu site inclui uma AC certificado com o rótulo "download extra", talvez ele não carregue em dispositivos plataformas.
  • Enquanto o Chromecast exibe a página do receptor da Web em um plano gráfico de 720p, outras plataformas de transmissão, incluindo a Android TV, poderão exibir a página em até 1080p. Verifique se a página do receptor da Web é dimensionada corretamente em diferentes resoluções.

Como usar o Android Debug Bridge

A plataforma Android TV é destaque em muitos tipos de eletrônicos de consumo dispositivos: televisões, conversores, consoles de jogos etc. Cada um deles pode ser configurado de maneira diferente. Se estiver com dificuldade para acessar recursos do sistema do Android TV com a interface do usuário do dispositivo, você pode use o Android Debug Bridge (adb) para obter o número de série do seu dispositivo para e para depurar seu aplicativo. Consulte a documentação do Debug Bridge e muito mais informações imprecisas ou inadequadas.

Usar o adb por Wi-Fi

Para se conectar ao seu dispositivo via ADB com uma conexão Wi-Fi:

  1. No dispositivo Android TV, ative as opções do desenvolvedor, conforme descrito em Como configurar para desenvolvimento.
  2. Verifique se o computador está conectado à mesma rede que seu Android Dispositivo de TV.
  3. Abra um terminal e digite o seguinte:

    adb connect Android TV device IP address:4321
    
  4. No computador, abra um terminal e digite os comandos do adb. É possível verificar a conexão foi estabelecida e se o dispositivo Android TV está se comunicando na rede com o seguinte comando:

    adb logcat

Como usar o adb com um cabo USB

Para se conectar ao seu dispositivo pelo ADB usando uma conexão por cabo USB:

  1. Configure o dispositivo Android TV para desenvolvimento, conforme descrito em Como configurar para desenvolvimento.
  2. Conecte a extremidade principal do cabo USB ao computador.
  3. Na caixa de diálogo Permitir a depuração USB?, selecione Sempre permitir em neste computador e selecione OK.
  4. No computador, abra um terminal e digite os comandos do adb. É possível verificar a conexão foi estabelecida e se o dispositivo Android TV está se comunicando na rede com o seguinte comando:

    adb logcat

Como usar o adb sobre TCP/IP

O adb funciona sem um cabo USB, por TCP/IP, mas primeiro é preciso instalar o Endereço IP do dispositivo de TV. Os dispositivos com problemas de desenvolvimento detectam conexões de porta adb automaticamente e podem ser conectados sem inicializar a porta. Padrão os dispositivos Android TV de varejo não detectam conexões adb automaticamente. para esses dispositivos, primeiro conecte-se ao adb com um cabo USB e inicialize pela porta.

  1. Configure o dispositivo Android TV para desenvolvimento, conforme descrito em Como configurar para desenvolvimento.
  2. Na linha Dispositivo do Android TV, selecione Rede > Wi-Fi e selecione a rede conectada.
  3. Selecione Informações de status e anote o endereço IP.
  4. Se o dispositivo for um dispositivo Android TV padrão de varejo, faça o seguinte:

    1. Siga as etapas em Como usar o adb com um cabo USB.
    2. Verifique se o computador está conectado à mesma rede que o Android Dispositivo de TV.
    3. No computador, em um terminal, inicialize a porta para TCP/IP da seguinte forma: inserindo o seguinte:

      adb tcpip 5555
    4. Remova o cabo USB e insira o seguinte no terminal:

      adb connect Android TV device IP address:5555
      
  5. Se o dispositivo for um Android TV com problema de desenvolvedor, faça o seguinte:

    1. Verifique se o computador está conectado à mesma rede que seu Android Dispositivo de TV.
    2. Abra um terminal e digite o seguinte:

      adb connect Android TV device IP address:4321
      
  6. No Android TV, na caixa de diálogo Permitir a depuração USB?, selecione Sempre permitir neste computador e selecione OK. Você pode verificar a conexão estiver estabelecida e se o dispositivo Android TV está se comunicando pela com o seguinte comando:

    adb logcat