Android TV avec Google Cast

Android TV est disponible avec Google Cast dès la sortie d'Android 5.0. Ce document décrit la procédure de configuration et de test sur Android TV lorsque vous développez des applications Cast. Votre application Cast existante s'exécute sur Android TV sans effort supplémentaire. Si vous développez une application Cast pour la première fois, consultez la documentation Google Cast, puis développez votre application pour qu'elle s'exécute sur un appareil Chromecast avant de la développer et de la tester avec Android TV.

Configurer pour le développement

  1. Configurez votre appareil Android TV :
    1. Connectez l'appareil Android TV au réseau local.
    2. Connectez-vous à votre compte Google.
  2. Dans la section Paramètres de la ligne Appareil, sélectionnez À propos.
  3. Faites défiler l'écran vers le bas et cliquez plusieurs fois sur Compiler jusqu'à ce qu'une boîte de dialogue s'affiche avec le message "Vous êtes désormais un développeur".
  4. Si le débogage USB :
    1. Installez le câble USB, mais ne connectez pas encore l'extrémité maître du câble USB à votre ordinateur.
    2. Dans la ligne Preferences (Préférences), sélectionnez Developer options (Options pour les développeurs), USB debugging (Débogage USB), puis On (Activé).
  5. Revenez à l'écran d'accueil. Cette opération s'applique aux paramètres que vous venez de sélectionner. Les paramètres seront conservés jusqu'à ce que vous rétablissiez la configuration d'usine.
  6. Enregistrez votre appareil Android TV dans la console pour développeur du SDK Google Cast, comme décrit dans la section Enregistrement de l'appareil.

Débogage

Pour tester et déboguer votre application Web Receiver sur votre appareil Android TV, procédez comme suit:

  1. Enregistrez votre appareil Android TV et votre application dans la console pour développeur du SDK Google Cast. Pour en savoir plus sur l'enregistrement des appareils et des applications, consultez la section Enregistrement.
  2. Lancez l'application émettrice et castez sur l'appareil Android TV.
  3. Connectez-vous à votre appareil Android TV via ADB, comme décrit dans la section Utiliser Android Debug Bridge.
  4. Sur votre ordinateur de développement, ouvrez une fenêtre dans le navigateur Chrome et accédez à chrome://inspect.
  5. Cliquez sur le lien inspect pour intégrer Web Receiver dans le débogueur.
  6. Dans la console du débogueur à distance de Chrome, activez la journalisation de débogage en saisissant la commande suivante:

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

Pour en savoir plus, consultez la section Débogage.

Consignes pour la compatibilité avec Android TV

Rendre l'application Cast compatible avec Android TV ne nécessite que très peu d'opérations supplémentaires. Voici quelques recommandations et pièges courants à éviter pour vous assurer que votre application est compatible avec Android TV:

  • Sachez que la chaîne du user-agent contient à la fois "Android" et "C accessible". Certains sites peuvent rediriger l'utilisateur vers un site réservé aux mobiles, car ils détectent le libellé "Android". Ne partez pas du principe que "Android" dans la chaîne user-agent indique toujours un utilisateur mobile.
  • La pile multimédia d'Android peut utiliser un GZIP transparent pour récupérer les données. Assurez-vous que vos données multimédias peuvent répondre à Accept-Encoding: gzip.
  • Les événements multimédias HTML5 d'Android TV peuvent être déclenchés à des moments différents de ceux de Chromecast. Cela peut révéler des problèmes masqués sur Chromecast.
  • Lorsque vous mettez à jour le contenu multimédia, utilisez les événements liés au contenu déclenchés par des éléments <audio>/<video>, tels que timeupdate, pause et waiting. Évitez d'utiliser des événements liés à la mise en réseau tels que progress, suspend et stalled, car ils ont tendance à dépendre de la plate-forme.
  • Lorsque vous configurez les certificats HTTPS de votre site Web receiver, veillez à inclure les certificats CA intermédiaires. Consultez la page de test SSL de Qualsys pour vous en assurer: si le chemin de certification approuvé pour votre site inclut un certificat CA portant la mention "téléchargement supplémentaire", il est possible qu'il ne se charge pas sur les plates-formes Android.
  • Bien que Chromecast affiche la page du récepteur Web sur un plan graphique 720p, d'autres plates-formes Cast, y compris Android TV, peuvent afficher la page jusqu'à 1080p. Assurez-vous que votre page Web receiver s'adapte de manière fluide à différentes résolutions.

Utiliser Android Debug Bridge

La plate-forme Android TV est présente sur de nombreux types d'appareils électroniques grand public: téléviseurs, boîtiers décodeurs, consoles de jeu, etc. Chacun peut être configuré différemment. Si vous rencontrez des difficultés pour accéder aux ressources système Android TV via l'interface utilisateur de l'appareil, vous pouvez utiliser Android Debug Bridge (ADB) pour obtenir le numéro de série de votre appareil à enregistrer et pour déboguer votre application. Pour en savoir plus, consultez la page Android Debug Bridge.

Utiliser ADB via le Wi-Fi

Pour vous connecter à votre appareil via ADB à l'aide d'une connexion Wi-Fi:

  1. Sur votre appareil Android TV, activez les options pour les développeurs, comme décrit dans la section Configurer pour le développement.
  2. Assurez-vous que votre ordinateur est connecté au même réseau que votre appareil Android TV.
  3. Ouvrez un terminal et saisissez la commande suivante:

    adb connect Android TV device IP address:4321
    
  4. Sur votre ordinateur, ouvrez un terminal et saisissez les commandes ADB. Vous pouvez vérifier que la connexion est établie et que l'appareil Android TV communique sur le réseau à l'aide de la commande suivante:

    adb logcat

Utiliser ADB avec un câble USB

Pour vous connecter à votre appareil via ADB via une connexion par câble USB:

  1. Configurez votre appareil Android TV pour le développement, comme décrit dans la section Configurer le développement.
  2. Connectez l'extrémité principale du câble USB à votre ordinateur.
  3. Dans la boîte de dialogue Autoriser le débogage USB ?, sélectionnez Toujours autoriser depuis cet ordinateur, puis sélectionnez OK.
  4. Sur votre ordinateur, ouvrez un terminal et saisissez les commandes ADB. Vous pouvez vérifier que la connexion est établie et que l'appareil Android TV communique sur le réseau à l'aide de la commande suivante:

    adb logcat

Utiliser ADB sur TCP/IP

ADB fonctionne sans câble USB via TCP/IP, mais vous devez d'abord obtenir l'adresse IP de l'appareil Android TV. Les appareils produisant des problèmes de développement écoutent automatiquement les connexions de port ADB et peuvent être connectés sans initialiser le port. Les appareils Android TV standards vendus au détail n'écoutent pas automatiquement les connexions ADB. Pour ces appareils, vous devez d'abord vous connecter à ADB à l'aide d'un câble USB et initialiser le port.

  1. Configurez votre appareil Android TV pour le développement, comme décrit dans la section Configurer le développement.
  2. Sur Android TV, dans la ligne Device (Appareil), sélectionnez Network > Wi-Fi, puis le réseau connecté.
  3. Sélectionnez Informations d'état et notez l'adresse IP.
  4. Si votre appareil est un appareil Android TV standard commercialisé, procédez comme suit:

    1. Suivez la procédure décrite dans la section Utiliser ADB avec un câble USB.
    2. Assurez-vous que votre ordinateur est connecté au même réseau que l'appareil Android TV.
    3. Sur votre ordinateur, dans un terminal, initialisez le port pour TCP/IP en saisissant la commande suivante:

      adb tcpip 5555
    4. Débranchez le câble USB, puis saisissez les informations suivantes dans le terminal:

      adb connect Android TV device IP address:5555
      
  5. Si votre appareil Android TV est un problème par le développeur, procédez comme suit:

    1. Assurez-vous que votre ordinateur est connecté au même réseau que votre appareil Android TV.
    2. Ouvrez un terminal et saisissez la commande suivante:

      adb connect Android TV device IP address:4321
      
  6. Sur Android TV, dans la boîte de dialogue Autoriser le débogage USB ?, sélectionnez Toujours autoriser sur cet ordinateur, puis OK. Vous pouvez vérifier que la connexion est établie et que l'appareil Android TV communique sur le réseau à l'aide de la commande suivante:

    adb logcat