Développement Android TV - Les grands écrans arrivent, préparez-vous !
Publié: 2022-03-11Google veut apporter Android à tout, des téléphones aux montres, en passant par les voitures et les téléviseurs intelligents. Tout d'abord, dans l'intérêt d'une divulgation complète, je dois dire que je suis quelque peu partial en ce qui concerne les plates-formes de télévision intelligentes, alors éliminons cela. Je pense que la plupart, sinon toutes les plates-formes de télévision intelligentes sur le marché sont carrément terribles, mais ce n'est que moi. Google pense qu'il peut faire mieux et je suis enclin à croire qu'il peut vraiment faire mieux, ou du moins j'espère qu'il le peut, à la fois en tant que consommateur et passionné de technologie.
Alors, qu'est-ce qu'Android TV ? Beaucoup de gens le confondent avec Google TV, une ancienne plate-forme sortie en 2010. Elle a été développée par Google, Sony, Intel et Logitech, mais elle n'a jamais gagné en popularité. Il a été officiellement remplacé par Android TV à la mi-2014, et cette nouvelle plate-forme est beaucoup plus excitante pour les consommateurs et les développeurs.
Contrairement à Google TV, Android TV est beaucoup plus proche d'Android standard. Il fonctionne sous Android 5.0 (au moins dans la version de lancement initiale) et peut être utilisé sur de nouveaux téléviseurs, ainsi que sur des appareils autonomes. C'est une bonne nouvelle car Android TV se retrouvera sur des boîtiers et des sticks Android TV bon marché, apportant la même expérience utilisateur à des millions d'anciens téléviseurs. En fait, le premier appareil à proposer Android TV n'est pas du tout un téléviseur, c'est le Nexus Player de Google. Cela répond également à l'une des plus grandes plaintes déposées contre diverses plates-formes de télévision intelligente dans le passé : le manque de cohérence. Android TV devrait apporter une expérience utilisateur presque identique à tous les appareils compatibles.
La révolution ne sera pas télévisée, elle sera diffusée en continu
En ce qui concerne les nouvelles fonctionnalités, Android TV introduit également la prise en charge de Google Cast. Vous connaissez peut-être Google Cast depuis la clé Chromecast. La technologie est déjà prise en charge par des centaines d'applications et de services, et d'autres sont en cours de développement. Google Cast permet aux appareils Android TV de recevoir du contenu diffusé en continu à partir d'une gamme d'appareils. La mise en œuvre est simple à l'aide de l'API Google Cast, et vous trouverez toutes les informations dont vous avez besoin sur le site de développement de Google Cast.
Cela signifie-t-il que Google veut transformer les câblodistributeurs en "tuyaux stupides" et utiliser simplement leur bande passante plutôt que leur contenu ? Pas vraiment, mais tout est possible, d'autant plus que les plateformes de smart TV prolifèrent.
Cependant, le streaming n'est pas le seul atout de Google.
Android TV crée également de nouvelles opportunités pour la communication, les jeux, la domotique et bien plus encore. Android TV pourrait devenir un hub pour toutes sortes d'appareils connectés, exécutant Android ou d'autres plates-formes. Vous pouvez l'utiliser pour voir qui est à la porte, régler votre climatisation ou votre thermostat connecté, peut-être même synchroniser vos ampoules LED RVB avec votre téléviseur tout en regardant des classiques d'action des années 80.
Certes, certaines de ces choses peuvent sembler fantaisistes, mais Android TV n'est pas pour les gadgets ; ce ne sera pas une plate-forme de niche comme Android Wear ou Android Auto. Il n'y a pas si longtemps, seuls les passionnés achetaient des téléviseurs intelligents et des smartphones, mais les téléphones multifonctions et les téléviseurs traditionnels ont pratiquement disparu à ce stade. Android TV se retrouvera sur les téléviseurs de millions de foyers ; il n'y a vraiment aucun doute à ce sujet.
C'est une bonne nouvelle pour les développeurs Android, car la base d'utilisateurs ne manquera pas de croître rapidement, atténuant ainsi le risque de s'attaquer à une nouvelle plate-forme pour le développement d'applications Android TV.
Android TV - Qu'y a-t-il sous le capot ?
En ce qui concerne le matériel, nous verrons des écrans FHD standard Android (1080p) et UHD (3840x2160). Il y a également de fortes chances que certains fabricants apportent également Android TV aux unités incurvées 21: 9 dans le futur, mais pour le moment, l'accent sera mis sur les panneaux 16: 9. Les concepteurs d'interface utilisateur doivent garder cela à l'esprit.
Puisqu'il est basé sur Android 5.0 (API niveau 21) et utilise ART, la plupart des appareils Android TV seront équipés de processeurs 64 bits. Le Nexus Player est basé sur un processeur Intel Atom, de nombreux téléviseurs Android à venir arboreront le processeur MT5595 de MediaTek, tandis que la console Shield de Nvidia, que j'ai déjà abordée dans un article précédent, utilise le processeur Tegra X1. Les offres System-on-Chip (SoC) d'Intel et de Nvidia sont basées sur des cœurs de processeur 64 bits, tandis que MediaTek utilise des cœurs Cortex-A17 et Cortex-A7 32 bits.
Tout le matériel Android TV devra prendre en charge le décodage HEVC et VP9, et il est probable que la plupart de ces puces seront capables de gérer plusieurs flux non UHD à la fois. Diffuser du contenu UHD à 60 images par seconde ne devrait pas non plus être un problème. Le sans fil bi-bande rapide est également intégré, offrant une bande passante suffisante pour les flux UHD.
Les plates-formes matérielles Android TV s'appuieront sur de nombreux intergiciels et seront conformes à plusieurs normes de diffusion pour couvrir toutes les régions et tous les marchés.
Le matériel n'a rien d'exotique et les développeurs n'ont pas à s'inquiéter. Une grande partie de l'ADN d'Android 5.0 assure une transition en douceur sur le plan logiciel, mais il y a certaines choses à garder à l'esprit.
Android passe au grand écran
Qu'est-ce que tout cela signifie pour les développeurs ? Le développement d'Android TV semble simple, mais un rapide coup d'œil sur les spécifications ne donne pas une image complète. Alors que de nombreux développeurs et concepteurs devraient se sentir comme chez eux, ils doivent également s'assurer que les utilisateurs se sentent chez eux - après tout, Android TV est conçu pour le salon.
Commençons par la bonne nouvelle. La plupart des appareils Android TV utiliseront des panneaux 16: 9 dans seulement deux résolutions, donc beaucoup de choses seront standardisées. Cela aidera à améliorer la cohérence et devrait rendre les tests un peu plus faciles.
- Travaillant dans un rapport d'aspect, 16: 9 (bien que des appareils 21: 9 puissent apparaître à l'avenir).
- Conçu pour deux résolutions, FHD et UHD, seule la densité varie en fonction de la taille de l'écran.
- Utilisation de nombreux éléments d'interface utilisateur standardisés.
- Pas besoin de penser à la saisie tactile.
- Pas beaucoup de capteurs à gérer.
- L'efficacité énergétique n'est pas pertinente.
Cependant, le développement d'applications Android TV apporte également un certain nombre de nouveaux défis à relever. Puisqu'il n'y a pas de saisie tactile sur le téléviseur lui-même (bien que les tablettes et les téléphones puissent être utilisés pour la saisie), nous devrons gérer d'autres méthodes de saisie telles que les télécommandes, les souris tierces, les claviers, les contrôleurs de jeu, etc. . Il y a aussi beaucoup de choses héritées d'Android qui doivent disparaître (par exemple, il n'y a pas de mode portrait). Les variations de densité de pixels sont beaucoup plus importantes, le manque de saisie tactile peut être problématique pour certains développeurs, etc.
Voici quelques-uns des défis :
- Prise en charge de plusieurs contrôleurs à la fois.
- Prise en charge de différents types de contrôleurs, c'est-à-dire des contrôleurs de télécommande et de jeu standard.
- Peu de capteurs à bord.
- Le surbalayage peut être un problème sur certains appareils.
- Densité de pixels très différente, même dans la même résolution (les téléviseurs sont disponibles dans beaucoup plus de tailles que les tablettes et les téléphones).
- Supprimez les éléments inutiles.
Examinons de plus près certains de ces problèmes. Étant donné que les téléviseurs Android seront utilisés comme hubs multimédias, il est probable que les gens voudront utiliser plus d'un contrôleur sur eux. Certains peuvent vouloir un clavier Bluetooth, tandis que d'autres peuvent obtenir deux contrôleurs de jeu pour une action multijoueur. La bonne nouvelle est que vous n'aurez probablement pas besoin de code personnalisé pour implémenter la prise en charge d'entrées de contrôleur supplémentaires, car l'entrée de contrôleur de jeu Android standard peut être utilisée pour l'interface utilisateur et les applications telles que les jeux. Cependant, vous devrez peut-être adresser plus d'un périphérique d'entrée, et si vous devez ajouter la prise en charge de contrôleurs plus exotiques, quelques ajustements peuvent être nécessaires.
La plupart des téléviseurs Android seront livrés avec un ensemble de capteurs limité. Pourquoi auriez-vous besoin d'un GPS sur un téléviseur ? C'est pourquoi il est nécessaire de désactiver la prise en charge des fonctionnalités matérielles non disponibles sur les appareils TV. Il y a beaucoup d'informations détaillées sur la façon de tout trier; fondamentalement, il suffit de signaler les capteurs non pris en charge comme faux et c'est tout.
Vous devez également parcourir le manifeste de l'application Android et vérifier s'il exclura ou non les appareils Android TV en raison de leur manque de fonctionnalités.
Par exemple, la permission standard ACCESS_FINE_LOCATION
utilise le GPS. Comme il n'y a pas de GPS à bord, le manifeste de votre application doit inclure les éléments suivants :
<uses-feature android:name="android.hardware.gps" android:required="false"/>
Par conséquent, vous devrez remplacer ACCESS_FINE_LOCATION
par ACCESS_COARSE_LOCATION
. Le même principe s'applique aux autres aspects de la plateforme et les détails sont disponibles sur Google. Une autre ressource que vous voudrez peut-être consulter est le guide du développeur Android TV de Nvidia.

Si vous envisagez de réutiliser des éléments d'autres projets Android, cela vaut la peine d'être gardé à l'esprit, sinon vous pourriez vous retrouver avec une application qui essaie d'ouvrir un menu en mode portrait sur un téléviseur, ce qui m'amène au point suivant :
Interface utilisateur Android TV 10 pieds
Bien qu'Android TV soit essentiellement Android 5.0, l'interface utilisateur n'a pas grand-chose à voir avec le stock Android tel que nous le connaissons. Les plates-formes Smart TV utilisent une approche «10 pieds», ce qui signifie essentiellement que l'expérience utilisateur est optimisée à 10 pieds de l'écran, soit environ dix fois plus que sur un smartphone ou une tablette.
Le concept « 10 pieds » est antérieur aux plates-formes de télévision intelligente. Il était également utilisé dans la conception d'affichage à l'écran (OSD), la conception de tableaux de bord de consoles de jeux et était généralement utilisé par les systèmes surround 5.1 grand public. Alors, qu'est-ce que cela signifie pour l'expérience utilisateur et la conception de l'interface utilisateur ?
Eh bien, les concepteurs doivent s'assurer que tout semble OK sur une gamme de panneaux différents, des téléviseurs 1080p 37 pouces bon marché aux monstres 65 pouces ou 75 pouces en UHD. L'interface utilisateur doit bien fonctionner en FHD et UHD, quelle que soit la taille de l'écran. Bien que nous n'ayons affaire qu'à quelques résolutions différentes, la densité de pixels (pixels par pouce ou ppi) varie considérablement.
Voici quelques exemples:
- Panneau UHD de 42 pouces – 105ppi
- Panneau FHD de 42 pouces – 52ppi
- Dalle UHD 50 pouces – 88ppi
- Panneau FHD de 50 pouces – 44ppi
- Dalle UHD 55 pouces – 80ppi
- Panneau UHD de 65 pouces – 67ppi
- Panneau FHD de 32 pouces – 69ppi
Il est peu probable que nous voyions des panneaux UHD sur des téléviseurs Android avec des tailles de panneau comprises entre 30 et 40 pouces, mais nous devrions voir de nombreux appareils FHD fonctionner dans ce segment. De nombreux consommateurs achèteront simplement de nouveaux téléviseurs Android plutôt que de remplacer les téléviseurs 1080p existants. Bien que de nombreux fabricants de téléviseurs commenceront à utiliser des panneaux 4K sur des modèles de plus de 40 pouces, les développeurs doivent encore réfléchir à la prise en charge héritée.
C'est aussi pourquoi nous devons garder à l'esprit que le surbalayage peut être un problème. De nombreux téléviseurs équipés de décodeurs Android TV perdront de l'espace sur l'écran vers la lunette. Toute personne familière avec la vidéo connaît déjà une chose ou deux sur les images sécurisées (action safe et title safe) ; c'est un retour à l'époque des téléviseurs CRT à définition standard, mais c'est toujours une bonne idée de rester prudent et d'éviter de placer des éléments d'interface utilisateur importants près du bord. Essayez de garder au moins 5 % de la zone libre de tout contenu important et utilisez une marge encore plus sûre pour les éléments d'interface utilisateur vraiment importants ; 10% devraient faire l'affaire, mais si vous voulez être complètement en sécurité, vous pouvez aller encore plus loin.
Gardez à l'esprit que ce problème particulier n'existe pas sur les tablettes ou les smartphones. Heureusement, cela ne signifie pas que Google ne l'a pas pris en considération, donc la prise en charge de l'overscan est intégrée à Android TV (et en fait à d'autres versions d'Android post 4.2.x). Si vous envisagez d'utiliser OpenGL, vous devez également résoudre ce problème.
Il est peu probable que le surbalayage soit un problème sur les vrais téléviseurs Android, mais cela pourrait être un gros problème sur les solutions Android TV du marché secondaire. Tout le monde ne veut pas mettre à niveau son téléviseur toutes les quelques années, et beaucoup de gens recevront à la place un dongle HDMI à 50 $ avec Android TV. C'est pourquoi il est judicieux d' inclure des options de configuration de surbalayage dans votre application Android TV.
Une autre bonne idée est de consulter les meilleures pratiques de Google concernant la prise en charge de plusieurs écrans. C'est simple mais important; il y a de fortes chances que vous deviez inclure des "écrans compatibles" supplémentaires dans le manifeste de l'application.
Améliorer l'expérience utilisateur d'Android TV
L'expérience utilisateur a toujours été un problème pour les plates-formes de télévision intelligentes. Android TV est Google TV bien fait, et il devrait améliorer l'expérience utilisateur, mais pas prêt à l'emploi ; les développeurs devront faire beaucoup de gros travaux.
La bonne nouvelle est que les téléviseurs ne nécessitent pas vraiment beaucoup de contribution et d'engagement de la part des utilisateurs. n'importe quelle patate de canapé en attestera ! Les fabricants de téléviseurs ont déjà passé des années à peaufiner leurs interfaces de téléviseurs intelligents et à améliorer l'expérience utilisateur avec des interfaces utilisateur plus rapides et plus élégantes et de nouveaux matériels, tels que de nouvelles télécommandes dotées de capteurs. Les choses avançaient bien même sans Android TV, mais la nouvelle plate-forme de Google ouvre plus d'opportunités.
J'ai déjà dit que j'étais un peu sceptique en matière de télévision intelligente, mais même moi, je dois admettre que de nombreux progrès ont été réalisés au cours des deux dernières années. Cependant, Android TV ne consiste pas seulement à améliorer la façon dont les gens consomment le contenu télévisé, il s'agit plutôt de changer la façon dont ils le font.
Si vous êtes le type d'utilisateur qui aime juste regarder beaucoup de sports et de politique en une seule frénésie (comme mon père à la retraite et ennuyé), UX est une réflexion après coup. Il en va de même pour les gens comme moi, qui gardent la télévision allumée en arrière-plan, écoutant les informations ou la musique comme ils auraient pu le faire avec une ancienne radio à valve. Cependant, la façon dont de nombreuses personnes consomment du contenu vidéo a radicalement changé au cours des 10 à 15 dernières années, d'abord avec les enregistreurs vidéo numériques, maintenant avec le streaming. Les adolescents d'aujourd'hui grandissent entourés d'appareils connectés et ils attendent encore plus d'un téléviseur que les milléniaux.
L'objectif ultime de toute plate-forme de télévision intelligente, qui s'est avérée insaisissable jusqu'à présent, est de créer une nouvelle expérience utilisateur, combinant la télévision traditionnelle avec la vidéo à la demande et d'autres types de contenu, de la manière la plus transparente possible. Personnellement, je ne pense pas que quelqu'un l'ait fait correctement jusqu'à présent. Google pourrait le faire, mais cela reste à voir. Beaucoup dépendra des développeurs tiers. Ils devront suivre un certain nombre de directives pour offrir une bonne UX sur tous les types de matériel Android TV, des dongles HDMI à 50 $ aux téléviseurs haut de gamme à 5 000 $.
Étant donné que je ne suis pas un fan des plates-formes de télévision intelligentes actuelles, énumérer ce qui doit être fait pour créer une expérience utilisateur parfaite peut être pour le moins présomptueux. Pourtant, les experts UI et UX ont tendance à s'accorder sur certains points :
- Les téléviseurs intelligents ne sont encore que des téléviseurs - ils sont principalement utilisés pour consommer du contenu vidéo, pas pour faire un million de choses différentes que nous faisons déjà sur nos mobiles et tablettes.
- Les méthodes de saisie doivent s'améliorer - les télécommandes ont évolué, mais elles ne sont toujours pas assez bonnes pour une interface utilisateur complexe. L'utilisation des smartphones et des tablettes comme méthodes de saisie alternatives est toujours considérée comme geek et doit être plus simple.
- Contrôle gestuel - il pourrait être implémenté dans certaines situations, mais comme nous avons affaire à une expérience utilisateur passive, cela ne changera pas grand-chose.
- Utilisateurs multiples - Les téléviseurs ne sont pas des appareils personnels dans la plupart des foyers, alors oubliez de vous connecter, cela ne fera qu'ennuyer les utilisateurs.
- Si ce n'est pas cassé, ne le réparez pas - la radio et la télévision traditionnelles offrent toujours une expérience utilisateur très agréable en raison de leur simplicité et de leur commodité, il n'est donc pas nécessaire de réinventer la roue.
- Gardez tout simple - essayez de garder l'interaction de l'utilisateur à un minimum absolu, avec aussi peu de clics que possible.
- Optez pour une interface utilisateur propre et minimale - simplement parce que vous avez beaucoup de biens immobiliers avec lesquels jouer, vous n'êtes pas obligé de tout utiliser.
En fin de compte, les développeurs d'Android TV ne peuvent pas faire grand-chose ; il reste aux partenaires Google et Android TV à créer une excellente expérience utilisateur. Les développeurs tiers s'appuieront simplement dessus, étendront les fonctionnalités tout en garantissant une expérience cohérente sur plusieurs appareils. Si la plate-forme sous-jacente souffre de problèmes de démarrage ou d'incohérences, les développeurs doivent faire leur magie les mains liées dans le dos.