Android TV con Google Cast

Con il rilascio di Android 5.0 è disponibile Android TV, che supporta Google Cast. In questo documento viene spiegato cosa devi fare per configurare e testare Android TV durante lo sviluppo di applicazioni Google Cast. L'app Cast esistente funziona su Android TV senza alcuno sforzo aggiuntivo. Se sviluppi un'applicazione Cast per la prima volta, consulta la documentazione di Google Cast e sviluppa l'applicazione Cast per l'esecuzione su un dispositivo Chromecast prima di sviluppare e testare l'app con Android TV.

Configurazione per lo sviluppo

  1. Configura il tuo dispositivo Android TV:
    1. Collega il dispositivo Android TV alla rete locale.
    2. Accedi al tuo Account Google.
  2. In Impostazioni, nella riga Dispositivo, seleziona Informazioni.
  3. Scorri verso il basso e fai clic più volte su Crea finché non viene visualizzata una finestra di dialogo con il messaggio "Ora sei uno sviluppatore".
  4. In caso di debug USB:
    1. Installa il cavo USB, ma non collegare ancora l'estremità master del cavo USB al computer.
    2. Nella riga Preferenze, seleziona Opzioni sviluppatore, Debug USB e On.
  5. Torna alla schermata Home. È necessario eseguire questa operazione per applicare le impostazioni appena selezionate. Le impostazioni verranno mantenute, a meno che non eseguirai un ripristino dei dati di fabbrica.
  6. Registra il tuo dispositivo Android TV nella Console per gli sviluppatori dell'SDK Google Cast, come descritto nella sezione Registrazione del dispositivo.

Debug

Per testare ed eseguire il debug dell'applicazione Web Ricevir sul tuo dispositivo Android TV, procedi nel seguente modo:

  1. Registra il tuo dispositivo Android TV e la tua applicazione nella Console per gli sviluppatori dell'SDK Google Cast. Consulta Registrazione per ulteriori informazioni sulla registrazione di dispositivi e applicazioni.
  2. Avvia l'applicazione del mittente e trasmettila al dispositivo Android TV.
  3. Esegui la connessione al tuo dispositivo Android TV tramite ADB, come descritto in Utilizzo di Android Debug Bridge.
  4. Sul computer di sviluppo, apri una finestra del browser Chrome e vai all'indirizzo chrome://inspect.
  5. Fai clic sul link inspect per spostare il ricevitore web nel debugger.
  6. Nella console di Chrome Remote Debugger, attiva la registrazione del debug inserendo quanto segue:

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

Per ulteriori informazioni, consulta la sezione Debug.

Linee guida relative alla compatibilità con Android TV

Rendere l'applicazione Cast compatibile con Android TV richiede pochissimo lavoro aggiuntivo. Di seguito sono riportati alcuni consigli ed errori comuni da evitare per garantire la compatibilità dell'applicazione con Android TV:

  • Tieni presente che la stringa dello user agent contiene sia "Android" che "C commento"; alcuni siti potrebbero reindirizzare a un sito solo per dispositivi mobili perché rilevano l'etichetta "Android". Non dare per scontato che "Android" nella stringa dello user agent indichi sempre un utente di dispositivi mobili.
  • Lo stack multimediale di Android potrebbe utilizzare un file GZIP trasparente per recuperare i dati. Assicurati che i dati multimediali possano rispondere a Accept-Encoding: gzip.
  • Gli eventi multimediali HTML5 di Android TV potrebbero essere attivati con tempistiche diverse rispetto a Chromecast e potrebbero rivelare problemi nascosti su Chromecast.
  • Quando aggiorni i contenuti multimediali, utilizza gli eventi correlati ai contenuti multimediali attivati dagli elementi <audio>/<video>, come timeupdate, pause e waiting. Evita di utilizzare eventi relativi al networking come progress, suspend e stalled, poiché tendono a dipendere dalla piattaforma.
  • Quando configuri i certificati HTTPS del sito del ricevitore web, assicurati di includere certificati CA intermedi. Consulta la pagina di test SSL Qualsys per verificare: se il percorso della certificazione attendibile per il tuo sito include un certificato CA con l'etichetta "download aggiuntivo", potrebbe non essere caricato sulle piattaforme basate su Android.
  • Mentre Chromecast visualizza la pagina ricevitore web su un piano grafico da 720p, altre piattaforme di trasmissione, tra cui Android TV, potrebbero visualizzare la pagina con una risoluzione massima di 1080p. Assicurati che la pagina del ricevitore web venga scalata correttamente a diverse risoluzioni.

Utilizzo di Android Debug Bridge

La piattaforma Android TV è presente su molti tipi di dispositivi elettronici di consumo: televisori, decoder, console per videogiochi e così via. Ognuna può essere configurata in modo diverso. Se hai difficoltà ad accedere alle risorse di sistema di Android TV tramite l'interfaccia utente del dispositivo, puoi utilizzare Android Debug Bridge (ADB) per ottenere il numero di serie del dispositivo per la registrazione e per eseguire il debug dell'applicazione. Per ulteriori informazioni, consulta AndroidDebug Bridge.

Utilizzo di ADB tramite Wi-Fi

Per connetterti al dispositivo tramite ADB con una connessione Wi-Fi:

  1. Sul dispositivo Android TV, attiva le opzioni sviluppatore come descritto in Configurazione per lo sviluppo.
  2. Assicurati che il computer sia connesso alla stessa rete del dispositivo Android TV.
  3. Apri un terminale e inserisci quanto segue:

    adb connect Android TV device IP address:4321
    
  4. Sul computer, apri un terminale e inserisci i comandi ADB. Puoi verificare che la connessione sia stata stabilita e che il dispositivo Android TV stia comunicando attraverso la rete con questo comando:

    adb logcat

Utilizzo di ADB con un cavo USB

Per eseguire la connessione al tuo dispositivo tramite ADB con un cavo USB:

  1. Configura il dispositivo Android TV per lo sviluppo, come descritto nella sezione Configurazione per lo sviluppo.
  2. Collega l'estremità principale del cavo USB al computer.
  3. Nella finestra di dialogo Vuoi consentire il debug USB?, seleziona Sempre Consenti da questo computer e seleziona OK.
  4. Sul computer, apri un terminale e inserisci i comandi ADB. Puoi verificare che la connessione sia stata stabilita e che il dispositivo Android TV stia comunicando attraverso la rete con questo comando:

    adb logcat

Utilizzo di ADB su TCP/IP

ADB funziona senza cavo USB, tramite TCP/IP, ma devi prima ottenere l'indirizzo IP del dispositivo Android TV. I dispositivi con problemi di sviluppo rilevano automaticamente le connessioni alla porta ADB e possono essere connessi senza inizializzare la porta. I dispositivi Android TV per il retail standard non rilevano automaticamente le connessioni ADB; per questi dispositivi, devi prima collegarti ad ADB con un cavo USB e inizializzare la porta.

  1. Configura il dispositivo Android TV per lo sviluppo, come descritto nella sezione Configurazione per lo sviluppo.
  2. Su Android TV, nella riga Dispositivo, seleziona Rete > Wi-Fi e seleziona la rete connessa.
  3. Seleziona Informazioni sullo stato e prendi nota dell'indirizzo IP.
  4. Se il tuo dispositivo è un dispositivo Android TV standard per la vendita al dettaglio, procedi nel seguente modo:

    1. Segui i passaggi descritti in Utilizzo di ADB con un cavo USB.
    2. Assicurati che il computer sia collegato alla stessa rete del dispositivo Android TV.
    3. Sul computer, in un terminale, inizializza la porta per TCP/IP inserendo quanto segue:

      adb tcpip 5555
    4. Rimuovi il cavo USB e inserisci quanto segue nel terminale:

      adb connect Android TV device IP address:5555
      
  5. Se il tuo dispositivo è un problema che causa un problema di sviluppo con Android TV:

    1. Assicurati che il computer sia collegato alla stessa rete del dispositivo Android TV.
    2. Apri un terminale e inserisci quanto segue:

      adb connect Android TV device IP address:4321
      
  6. Su Android TV, nella finestra di dialogo Vuoi consentire il debug USB?, seleziona Consenti sempre da questo computer, quindi seleziona OK. Puoi verificare che la connessione sia stata stabilita e che il dispositivo Android TV stia comunicando attraverso la rete con il seguente comando:

    adb logcat