Android TV con Google Cast

Con Android 5.0 è disponibile Android TV, che supporta Google Cast. Questo documento descrive cosa devi fare per configurare e testare Android TV durante lo sviluppo di applicazioni Google Cast. L'applicazione di trasmissione esistente viene eseguita su Android TV senza ulteriori sforzi. Se è la prima volta che sviluppi un'applicazione Google Cast, consulta la documentazione di Google Cast e sviluppa l'applicazione Google Cast da eseguire su un dispositivo Chromecast prima di sviluppare e testare i contenuti 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. Dalle Impostazioni, nella riga Dispositivo, seleziona Informazioni.
  3. Scorri verso il basso e fai clic più volte su Build finché non viene visualizzata una finestra di dialogo con il messaggio "Ora sei uno sviluppatore".
  4. Se il 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, seleziona Debug USB e seleziona On.
  5. Torna alla schermata Home. Questa operazione deve essere eseguita per applicare le impostazioni appena selezionate. Le impostazioni verranno mantenute a meno che non eseguirai il 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 dei dispositivi.

Debug

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

  1. Registra il dispositivo Android TV e l'applicazione nella Console per gli sviluppatori dell'SDK Google Cast. Consulta la pagina Registrazione per ulteriori informazioni sulla registrazione di dispositivi e applicazioni.
  2. Avvia l'applicazione del mittente e trasmetti sul dispositivo Android TV.
  3. Connettiti al dispositivo Android TV tramite ADB, come descritto nella sezione Utilizzo di Android Debug Bridge.
  4. Sulla macchina di sviluppo, apri una finestra del browser Chrome e vai a chrome://inspect.
  5. Fai clic sul link controlla per inserire il ricevitore web nel debugger.
  6. Nella console di Chrome Remote Debugger, attiva il logging di debug inserendo quanto segue:

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

Per ulteriori informazioni, consulta la sezione Debug.

Linee guida per la compatibilità con Android TV

Rendere l'applicazione Cast compatibile con Android TV richiede poco lavoro aggiuntivo. Ecco alcuni consigli e insidie comuni da evitare per assicurarti che la tua applicazione sia compatibile con Android TV:

  • Tieni presente che la stringa dello user agent contiene sia "Android" che "CBREAK"; 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 mobile.
  • Lo stack multimediale di Android potrebbe utilizzare GZIP trasparente per il recupero dei dati. Assicurati che i tuoi dati multimediali possano rispondere a Accept-Encoding: gzip.
  • Gli eventi multimediali HTML5 per Android TV potrebbero essere attivati in momenti diversi rispetto a Chromecast, il che potrebbe rivelare problemi nascosti su Chromecast.
  • Quando aggiorni i contenuti multimediali, utilizza eventi relativi ai contenuti multimediali attivati da elementi <audio>/<video>, ad esempio timeupdate, pause e waiting. Evita di utilizzare eventi relativi al networking come progress, suspend e stalled, perché dipendono dalla piattaforma.
  • Quando configuri i certificati HTTPS del sito web Receiver, assicurati di includere i certificati CA intermedi. Consulta la pagina del test SSL di Qualsys per verificare: se il percorso di certificazione attendibile del tuo sito include un certificato CA con "download aggiuntivo", è possibile che non venga caricato sulle piattaforme basate su Android.
  • Mentre Chromecast mostra la pagina del ricevitore web su un piano grafico a 720p, altre piattaforme di trasmissione, inclusa Android TV, potrebbero mostrare la pagina fino a 1080p. Assicurati che la pagina del ricevitore web venga ridimensionata in base 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 delle quali 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 la pagina Android Debug 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 descritte in Configurare 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 stabilita e che il dispositivo Android TV stia comunicando sulla rete con il seguente comando:

    adb logcat

Utilizzo di ADB con un cavo USB

Per connetterti al dispositivo tramite ADB con un collegamento via cavo USB:

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

    adb logcat

Utilizzo di ADB su TCP/IP

ADB funziona senza cavo USB, tramite TCP/IP, ma devi prima recuperare l'indirizzo IP del dispositivo Android TV. I dispositivi con problemi degli sviluppatori ascoltano automaticamente le connessioni alle porte ADB e possono essere connessi senza inizializzare la porta. I dispositivi Android TV di vendita al dettaglio standard non ascoltano automaticamente le connessioni ADB; per questi dispositivi devi prima connetterti ad ADB con un cavo USB e inizializzare la porta.

  1. Configura il tuo dispositivo Android TV per lo sviluppo, come descritto nella sezione Configurare lo sviluppo.
  2. Nella riga Dispositivo di Android TV, seleziona Rete > Wi-Fi e seleziona la rete collegata.
  3. Seleziona Informazioni sullo stato e prendi nota dell'indirizzo IP.
  4. Se il tuo dispositivo è un dispositivo Android TV standard, 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 dispositivo Android TV che presenta lo sviluppatore, procedi nel seguente modo:

    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 e seleziona OK. Puoi verificare che la connessione sia stabilita e che il dispositivo Android TV stia comunicando in rete con il seguente comando:

    adb logcat