Le de veloppement Mobile sur les montres connecte es - ISIMA
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
Le developpement Mobile sur les montres connectees Les outils de developpement mobile Technologies : Tizen, Android, Android Studio, Eclipse ADT Auteurs : Raksmey Phan Philippe Lacomme Tel. : 04 73 40 76 62 Tel. : 04 73 40 75 85 Email : phan@isima.fr Email : placomme@isima.fr Page web : http://limos.raksmey.fr/ Page web : http://www.isima.fr/~lacomme LIMOS - UMR CNRS 6158 LIMOS - UMR CNRS 6158 Université Blaise Pascal Université Blaise Pascal Campus des Cézeaux, 63173 Aubière Campus des Cézeaux, 63173 Aubière Page web du livre : http://www.isima.fr/~lacomme/ObjConnecte/index.php Ce chapitre est un complément au livre "Téléphones et montres connectés Outils de développement" (Editeur : Ellipses)
2 Chapitre 6 Copyright (C) 2012 LACOMME PHAN Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is available on the following website : http://www.gnu.org/licenses/fdl.html. Traduction non officielle : Permission vous est donnée de copier, distribuer et/ou modifier ce document selon les termes de la Licence GNU Free Documentation License, version 1.3 ou ultérieure publiée par la Free Software Foundation ; sans section inaltérable, sans texte de première page de couverture et sans texte de dernière page de couverture. Une copie de cette licence en anglais est consultable sur le site suivant : http://www.gnu.org/licenses/fdl.html. Une traduction Française non officielle est disponible à l'adresse suivante : http://www.gnu.org/licenses/fdl-howto-opt.fr.html
Téléphones et montres connectés 3 CHAPITRE 6 Découverte de la programmation pour téléphones et montres sous Tizen : Samsung Galaxy Gear 2 Lite et Samsung Gear S Contenu du chapitre : Objectifs du chapitre : Plateforme Outils Ce chapitre représente une introduction Android mobile NetBeans aux développements pour les téléphones et Samsung Tizen X And. Stud. X montres Samsung fonctionnant sous Tizen Android Wear Tizen Studio X La difficulté des développements à réaliser Eclipse ADT X réside dans le fait que deux éléments doivent être mis en communication : la montre et le téléphone. Ce chapitre va permettre : d'appréhender la configuration des environnements de développement ; de comprendre le déploiement des applications. Cette difficulté est renforcée par l'existence concurrente des outils de développement Samsung et Android. 6.1 Principes de développement sur les montres connectées Une montre connectée de type Gear 2 Lite est un objet qui se connecte à un téléphone portable. On obtient finalement un univers composé de trois sortes d'éléments (Figure 6-1) : des ressources externes disponibles sous la forme de web services (telle que la météo
4 Chapitre 6 utilisée dans les premiers chapitres de ce livre) ; un programme Java destiné au téléphone qui gère la communication avec : o le ou les web services, o la communication avec la montre via le Bluetooth ; un programme Tizen destiné à la montre Gear 2 Lite et qui communique avec le téléphone. Samsung Gear Live Récupération Affichage Interface Web Services des données Internet Récupération Récupération Affichage Interface Interface Affichage des données des données Client Java bluetooth Client Tizen Figure 6-1. Schéma de principe Ce chapitre concerne la montre connectée Galaxy Gear 2 Lite et la montre Gear S de Samsung. Avant de commencer, il est important d'apparier la montre avec un des téléphones qui lui sont compatibles. Dans notre cas, il s'agit d'un téléphone Samsung Galaxy S4. Lorsque la montre est "démarrée" pour la première fois, la procédure d'appareillage est lancée automatiquement. Celle-ci est suffisamment simple et didactique pour n'avoir besoin que de quelques précisions. Rappelons qu'il faut penser à activer la connexion Bluetooth du téléphone et que, dans le cas où la montre est déjà appareillée avec un autre téléphone, il est possible de la réinitialiser (donc de relancer l'appareillage avec un nouveau téléphone) en allant dans ses paramètres. 6.2 Configuration de la Galaxy Gear 2 Lite en mode développeur Pour que le développement puisse se faire (rappelons que 3 éléments sont à programmer dans le cas général), il faut configurer la montre en mode "développeur". Il s'agit du premier point illustré sur la Figure 6-2. Samsung Gear Live Récupération Affichage Interface Web Services des données 1 Internet Récupération Récupération Affichage Interface Interface Affichage des données des données Client Java bluetooth Client Tizen Figure 6-2. Premier élément : la configuration de la montre
Téléphones et montres connectés 5 Après le démarrage de la Galaxy Gear 2 Lite (Figure 6-3), il faut se rendre dans le menu Paramètres en faisant défiler les différents écrans de la droite vers la gauche (Figure 6-4). Figure 6-3. Démarrage de la Gear 2 Figure 6-4. Accès au menu Paramètres Parvenu dans celui-ci, il faut faire défiler de haut en bas les différents sous-menus à la recherche du menu Information (Figure 6-5) qu'il faut sélectionner. On accède alors à un menu qui contient une case à cocher (nommée Débogage) qu'il faut activer (Figure 6-6). Figure 6-5. Accès au menu Information Figure 6-6. Activation du débogage Dans ce menu on trouve A Propos qui contient des informations qui seront intéressantes par la suite comme, par exemple, le numéro de version ou le numéro de série (Figure 6-7). Figure 6-7. Informations liées au périphérique
6 Chapitre 6 Une fois connectée au PC via un câble USB, la montre doit apparaître automatiquement dans la liste des périphériques du système (Figure 6-8). Figure 6-8. Montre Samsung Gear 2 Lite connectée via USB à un PC Si ce n'est pas le cas, c'est que les drivers ne sont pas installés. Le plus simple consiste alors à installer Samsung Kies 3 ou une version ultérieure (Figure 6-9) qui est disponible à l'adresse suivante : http://www.samsung.com/uk/support/usefulsoftware/KIES/. Le point précédent vérifié, il faut débrancher la montre du PC. Figure 6-9. Kies sur le site de Samsung
Téléphones et montres connectés 7 6.3 La montre Samsung Gear S 6.3.1 Présentation des environnements La Samsung Gear S est une montre connectée autonome contrairement à la majorité des montres présentées dans les chapitres de ce livre. Son aspect extérieur est très soigné car cette montre Samsung correspond au modèle le plus haut de gamme de la marque. Elle se distingue des autres montres par une forme ergonomique, qui est censée suivre la forme d'un poignet. (Figure 6-10). Cette montre est compatible uniquement avec un smartphone Samsung. Même si elle possède une carte SIM et qu'elle peut fonctionner de manière autonome, il faut, pour activer la montre, posséder l'un des derniers téléphones Samsung. L'emplacement pour la carte SIM est situé sous la montre : il est prévu pour une carte au format Micro SIM (Figure 6-11). Figure 6-10. Samsung Gear S La montre est équipée d'un écran tactile de grande taille, très réactif et de qualité visuelle très supérieure à la moyenne des autres montres. Figure 6-11. Emplacement de la carte SIM
8 Chapitre 6 Cette montre est un objet autonome qui comporte un emplacement SIM pour accéder à Internet sans passer par un téléphone et qui se programme via l'environnement Tizen. Le développement sur ce type de montre pose peu de problèmes spécifiques, mais de nouvelles possibilités sont offertes aux programmeurs, puisque la montre possède un emplacement pour carte SIM et que de nombreuses fonctionnalités sont disponibles sans la connexion au téléphone. 6.3.2 Configuration de la montre Après le démarrage de la Galaxy Gear S, il faut se rendre dans le menu Paramètres en faisant défiler les différents écrans du bas vers le faut (Figure 6-12). Figure 6-12. Accès au menu Paramètres Parvenu dans celui-ci, il faut faire défiler de haut en bas les différents sous-menus à la recherche du menu Information (Figure 6-5) qu'il faut sélectionner. On accède alors à un nouveau menu qui contient une case à cocher (intitulée Débogage) qu'il faut activer (Figure 6-6). Figure 6-13. Accès au menu Information Figure 6-14. Activation du débogage
Téléphones et montres connectés 9 Dans ce menu on trouve A Propos qui contient des informations qui seront intéressantes par la suite comme, par exemple, le numéro de version ou le numéro de série (Figure 6-7). Figure 6-15. Contenu du menu A propos Figure 6-16. Contenu du menu A propos 6.4 Environnement de développement Tizen Cette partie présente l'installation et la configuration des outils nécessaires pour débuter le développement avec les deux environnements Samsung : Tizen IDE et Tizen IDE for Wearable. 6.4.1 Présentation des environnements Tizen est le nom d'un système d'exploitation destiné à des téléphones portables et Tizen SDK est un ensemble d'outils de développement créé par Samsung pour réaliser des développements informatiques sur ces terminaux. Tizen désigne aussi le nom de l'environnement de développement dédié aux développements d'applications pour les téléphones portables, les montres, les téléviseurs, et aussi pour l'informatique embarquée dans les voitures (plus généralement pour les objets connectés (Figure 6-17)) fonctionnant avec un système d'exploitation Tizen. Parmi eux, on peut citer la montre Samsung Gear 2 Lite. Il faut aussi noter que Samsung est un fabriquant de terminaux mobiles (des téléphones par exemple) fonctionnant sous d'autres systèmes que le système Tizen dont il assure la promotion. En particulier, les téléphones Samsung S4 ou S5 fonctionnent sous Android.
10 Chapitre 6 Samsung Gear 2 … … Samsung Z Galaxy S5 Galaxy Note 3 Galaxy S4 Figure 6-17. Écosystème Samsung 6.4.2 Téléchargement des outils de développement pour la Samsung Galaxy Gear 2 Lite Il faut se procurer l'environnement de développement spécifique à Tizen, disponible à l'adresse suivante : https://developer.tizen.org/fr/. Figure 6-18. Environnement Tizen Studio
Téléphones et montres connectés 11 Sur la page web de Tizen (Figure 6-18), il faut sélectionner deux installateurs et deux "images" en fonction des caractéristiques de la machine utilisée : Tizen SDK et SDK Image : pour le développement sur téléphones mobiles ; Tizen Wearable SDK et SDK Wearable Image : pour le développement sur les montres. Sur une machine Windows 64 bits, les quatre fichiers à télécharger sont ceux de la Figure 6-19. Figure 6-19. Les fichiers d'installation de Tizen Studio 6.4.3 Installation de Tizen IDE Il faut démarrer l'installateur de Tizen qui se présente sous la forme d'un exécutable tizen-sdk-windows64-v2.2.71.exe. Le programme se connecte automatiquement au site et essaie de télécharger les derniers packages. C'est alors que, dans une grande majorité de cas, on obtient un message d'erreur lié à des problèmes de disponibilité des serveurs (Figure 6-20). Figure 6-20. Erreur d'installation de Tizen Studio
12 Chapitre 6 Pour remédier à ce type d'incident, il suffit de cliquer sur le bouton Advanced et de choisir le fichier image téléchargé plus tôt (Figure 6-21) : tizen-sdk-image-2.2.1- windows64.zip (le nom peut changer en fonction de la version de Tizen téléchargée). Figure 6-21. Sélection du fichier correspondant au SDK Il faut ensuite poursuivre l'installation via le bouton Next (Figure 6-22). L'installation sur d'autres systèmes que Windows nécessite de procéder à une adaptation assez conséquente de cette présentation comme le montre la Figure 6-23, qui propose une interface très différente des menus obtenus sous Windows. Figure 6-22. Installation de Tizen SDK
Téléphones et montres connectés 13 Figure 6-23. Installation de Tizen SDK sous Linux Ubuntu Il faut être vigilant au moment de choisir le type d'installation et sélectionner Custom puis cocher tous les packages (Figure 6-24). Figure 6-24. Installation complète
14 Chapitre 6 Une fois l'installation terminée, un nouveau menu apparaît dans le menu Démarrer de Windows (Figure 6-25). Nommé Tizen SDK, il contient tous les outils liés à Tizen. Figure 6-25. Menu Tizen SDK 6.4.4 Création d'un émulateur de téléphone sous Tizen Dans l'environnement Tizen IDE, il faut lancer le programme Emulator Manager (Figure 6-26). Lors du premier démarrage, dans l'onglet tizen2.2, il n'y a aucune VM (Virtual machine : Émulateur) d'installée (Figure 6-27). Il faut cliquer sur le signe "+" de la fenêtre afin de créer un nouvel émulateur de téléphone. Figure 6-26. Emulator Manager dans Tizen IDE On peut, par exemple, appeler ce nouvel émulateur TelephoneTizen et garder les autres paramètres à leur valeur par défaut (Figure 6-28). Figure 6-27. Création d'un émulateur de téléphone sous Tizen
Téléphones et montres connectés 15 Il suffit ensuite de cliquer sur le bouton Confirm pour obtenir un émulateur. Pour le démarrer, cliquer sur le bouton visualisé sur la Figure 6-29. Figure 6-28. Création d'un émulateur de téléphone sous Tizen Figure 6-29. Lancement de l'émulateur de téléphone Tizen Le démarrage dure quelques minutes, le téléphone passe progressivement d'un état "en cours de démarrage" semblable à la Figure 6-30 à l'état "démarré" de la Figure 6-31. Une fois démarré, l'utilisateur peut par exemple, parcourir la liste des paramètres disponibles sur l'émulateur (Figure 6-32).
16 Chapitre 6 Figure 6-30. Démarrage Figure 6-31. Démarrage Figure 6-32. Liste des du téléphone 1/2 du téléphone 2/2 paramètres 6.4.5 Installation de Tizen IDE for Wearable Il s'agit de réaliser une opération similaire à celle utilisée pour l'installation de Tizen IDE. Pour la machine de test utilisée, le fichier à exécuter est le suivant : tizen- wearable-sdk-2.2.150_windows64.exe. Pour la même raison que précédemment, il est préférable d'utiliser le fichier image déjà téléchargé (Figure 6-33). Figure 6-33. Installation de Tizen Wear Contrairement au cas précédent, il n'y a aucun élément supplémentaire à installer, et on peut conserver les paramètres d'installation proposés par défaut (Figure 6-34).
Téléphones et montres connectés 17 Figure 6-34. Éléments à installer Dans le menu Démarrer de Windows, un deuxième menu apparaît sous le nom Tizen SDK for Wearable (Figure 6-35). Figure 6-35. Nouveau menu lié à Tizen Wearable 6.4.6 Création de l'émulateur de la montre Samsung Galaxy Gear 2 Lite Il faut lancer le programme Emulator Manager et procéder de la même manière que pour l'émulateur de téléphone sous Tizen en utilisant cette fois l'onglet Tizen Wearable (Figure 6-36).
18 Chapitre 6 Figure 6-36. Création d'un nouvel émulateur Ensuite, on peut appeler ce nouvel émulateur SamsungGear2Lite par exemple et garder les autres paramètres à leur valeur par défaut (Figure 6-37). Figure 6-37. Création d'un nouvel émulateur de montre Il suffit ensuite de cliquer sur le bouton Confirm pour rendre l'émulateur opérationnel. Lors du démarrage, la montre passe progressivement d'un état "en cours de démarrage" semblable à la Figure 6-38 à l'état "démarré" de la Figure 6-39. Une fois cette phase
Téléphones et montres connectés 19 terminée, l'utilisateur peut alors faire défiler le contenu de la fenêtre avec le pointeur de la souris et parvenir à l'écran qui liste les applications (Figure 6-40). Figure 6-38. Démarrage Figure 6-39. Démarrage Figure 6-40. Après le de la montre 1/2 de la montre 2/2 démarrage de la montre 6.4.7 Création d'un projet sous Tizen IDE for Wearable (projet destiné à une montre) Dans le but de tester la configuration de l'environnement de développement, il est créé ici une application très simple uniquement destinée à la montre Samsung Gear Lite 2. Le code affecté à la montre ne gère pas les communications avec le smartphone et comprend uniquement un affichage sous la forme d'un texte : l'indétrônable Hello World (partie 1de la Figure 6-41). Samsung Gear Live Récupération Affichage Interface Web Services des données 1 Internet Récupération Récupération Affichage Interface Interface Affichage des données des données Client Java bluetooth Client Tizen Figure 6-41. Création d'un projet sur la montre Dans Tizen IDE for Wearable, il s'agit de créer un projet Tizen (Figure 6-42) destiné à la Samsung Gear 2 Lite en choisissant comme type Tizen Web Project (Figure 6-43). Figure 6-42. Création d'un nouveau projet dans Tizen IDE for Wearable
20 Chapitre 6 Figure 6-43. Choix d'un projet pour une Samsung Gear 2 Lite Ce projet nommé essaimontre utilise le template Wearable Basic application (Figure 6-44). Figure 6-44. Création d'une application pour une Samsung Gear 2 Lite
Téléphones et montres connectés 21 Le code généré de manière automatique est du code html avec des appels à des fonctions javascript. On peut s'en apercevoir en ouvrant le fichier index.html (Figure 6-45). Figure 6-45. Code généré pour la Samsung Gear 2 Lite Il est possible de compiler et d'exécuter un code, soit sur un émulateur de Samsung Gear 2 Lite, soit directement sur une vraie montre. 6.4.8 Test d'un premier projet sur un émulateur On commence par le démarrage du gestionnaire de périphérique et on poursuit par celui de l'émulateur (Figure 6-46). Figure 6-46. Démarrage de l'émulateur
22 Chapitre 6 L'émulateur ainsi défini doit apparaître dans l'onglet Connection Explorer (Figure 6-47). Figure 6-47. Émulateur démarré Il faut ensuite procéder à la compilation du projet (Figure 6-48) qui une fois lancée donne le résultat de la Figure 6-49. Figure 6-48. Compilation Figure 6-49. Progression de la compilation d'un projet La compilation génère un nouveau fichier appelé essaimontre.wgt (Figure 6-50). Figure 6-50. Fichier généré par la compilation Pour exécuter le fichier, il faut faire un clic droit sur essaimontre.wgt et choisir Run AsTizen Wearable Web Application dans le menu contextuel (Figure 6-51).
Téléphones et montres connectés 23 Figure 6-51. Exécution du projet sur un émulateur Comme l'émulateur est le seul matériel compatible "connecté" au PC, l'application s'exécute automatiquement sur ce dernier. On obtient alors le résultat de la Figure 6-52. Figure 6-52. Résultat d'exécution sur le simulateur 6.4.9 Test d'un premier projet sur une montre Samsung Galaxy Gear 2 Lite A présent il faut brancher la montre au PC. Normalement, la connexion est déjà configurée et elle apparaît naturellement sous Windows (Figure 6-53).
24 Chapitre 6 Figure 6-53. Montre Samsung Gear 2 Lite connectée par USB La montre doit également apparaître dans l'onglet Connection Explorer de Tizen IDE for Wearable (Figure 6-54). Figure 6-54. Le projet avec la compilation Cette fois, il y a deux matériels sur lesquels on peut déployer le programme : l'émulateur et la montre. Si l'on veut exécuter l'application sur la montre, il faut penser à faire un clic-gauche dessus dans Connection Explorer, avant de déployer essaimonter.wgt. Par exemple sur la Figure 6-55, c'est l'émulateur qui a été sélectionné et sur la Figure 6-56 c'est la montre, sous la désignation 53ff411b4100ed90 (SM-R381) qui a été sélectionnée.
Téléphones et montres connectés 25 Figure 6-55. Connection Explorer : Figure 6-56. Connection Explorer : choix de l'émulateur choix de la montre L'application exécutée sur la montre Samsung Galaxy Gear 2 Lite donne le résultat de la Figure 6-57 et le résultat de la Figure 6-58 sur une Gear S. Figure 6-57. Résultat d'exécution sur une montre Gear 2 Lite Figure 6-58. Résultat d'exécution sur une montre Gear S 6.4.10 Conclusion Cette étape a permis de jeter les bases du développement sur la montre connectée Samsung Galaxy Gear 2 Lite et sur les téléphones mobiles sous Tizen. Il manque cependant encore l'installation d'un environnement de développement pour téléphone Android. Cet environnement sera présenté dans la partie suivante. 6.5 Environnement de développement Eclipse : ADT Bundle Cette partie présente l'installation et la configuration de ADT Bundle, qui permet le développement d'une application sur téléphone Android qui communique avec une montre Samsung sous Tizen. 6.5.1 Présentation de l'environnement Comme cela a été illustré dans les chapitres précédents, Android Studio est un nouvel environnement assez facile d'accès pour développer sous Android. Cependant il ne faut
26 Chapitre 6 pas oublier l'environnement Eclipse qui a déjà fait ses preuves depuis plusieurs années. De plus, Samsung a mis en place pour ses montres, l'environnement de développement Tizen IDE for Wearable ainsi qu'une librairie complète (pour Eclipse) pour gérer la communication avec ses téléphones. Il semble donc naturel de présenter aux lecteurs l'utilisation de l'IDE Eclipse dans le cadre de la programmation des montres connectées Samsung. 6.5.2 ADT Bundle : téléchargement et configuration Il est possible de réaliser des développements Java sur des téléphones Samsung à partir de l'environnement de développement classique Eclipse ADT. Le meilleur tutorial actuellement disponible sur le sujet, est celui proposé en vidéo à l'adresse suivante : https://www.youtube.com/watch?v=XtAf7g0scAs&list=UUkDAwuCKUcY1qn- hgNv0kLw. Figure 6-59. Site d'ADT Bundle La première opération consiste à télécharger et installer ADT Bundle qui comprend une version d'Eclipse IDE configurée pour ADT (Android Developer Tools) avec les composants d'Android SDK intégrés. Le fichier zip se trouve sur le site d'Android : http://developer.android.com/sdk/index.html (Figure 6-59). Pour le test, la machine utilisée est sous Windows 7, 64 bits. Il faut donc choisir la version d'ADT Bundle correspondante (Figure 6-60).
Téléphones et montres connectés 27 Figure 6-60. Téléchargement d'ADT Bundle Une fois décompressés, il est conseillé de déposer l'intégralité des fichiers dans un dossier appelé ADT Bundle à la racine du disque dur : C:\ADT Bundle (Figure 6-61). Figure 6-61. Contenu d'ADT Bundle Il faut ensuite récupérer les différentes API sur le site de Samsung à l'adresse suivante : http://developer.samsung.com/home.do. Il existe deux méthodes pour récupérer ces API : les télécharger directement, ou bien, configurer Eclipse pour qu'il les télécharge. 6.5.3 Méthode 1. téléchargement des API Le API nécessaires au développement sont regroupées à l'adresse suivante : http://developer.samsung.com/develop. Elles se trouvent dans la section Download SDKs et se divisent en 13 catégories (Figure 6-62).
28 Chapitre 6 Figure 6-62. API Samsung disponibles Ces librairies peuvent être téléchargées séparément et enregistrées dans un répertoire où elles apparaissent sous la forme de fichiers zip (Figure 6-63). Figure 6-63. Les API téléchargées Pour chaque API téléchargée, on peut dézipper le fichier et obtenir dans celui-ci un sous-répertoire Libs qui contient les fichiers jar correspondants. Par exemple, pour le dossier Libs de RemoteSensorSDK on obtient les fichiers de la Figure 6-64. Figure 6-64. Dossier Libs de RemoteSensorSDK_v1.0.0 6.5.4 Méthode 2 : téléchargement des API par Eclipse Il faut commencer par démarrer Eclipse ADT : l'exécutable se trouve dans le répertoire téléchargé plus tôt et copié dans "C:\ADT Bundle" (Figure 6-65).
Téléphones et montres connectés 29 Figure 6-65. Répertoire Eclipse Il faut ensuite aller à la page : http://developer.samsung.com/download-center où figurent deux liens vers le SDK pour Samsung Mobile. Le lien intéressant est celui entouré sur la Figure 6-66 : faire un clic-gauche dessus et le lien sera automatiquement copié. Ensuite dans un éditeur de texte (par exemple Notepad++) copier ce lien (touches Ctrl+V). A la date de la rédaction de cet ouvrage, le lien correspond à celui de la Figure 6-67. Figure 6-66. API téléchargées Figure 6-67. Lien vers le dépôt des librairies Samsung pour Eclipse
30 Chapitre 6 Dans Eclipse, sur le menu principal, cliquer sur HelpInstall New Software (Figure 6-68) puis dans la nouvelle fenêtre qui apparaît, cliquer sur Add (Figure 6-69), afin d'ajouter un nouveau dépôt de librairies. La fenêtre suivante, nommée Add Repository, permet de donner un nom au nouveau dépôt et d'entrer son adresse (Figure 6-70). Ce nouveau dépôt a été nommé "Samsung" et le lien du champ "Location:" est celui récupéré précédemment. Figure 6-68. Menu d'installation de nouveaux logiciels Figure 6-69. Fenêtre Available Software
Téléphones et montres connectés 31 Figure 6-70. Ajout d'un nouveau Repository De retour au menu Available Software, un nouveau dépôt est disponible: Samsung Mobile SDK Manager (Figure 6-71). Il faut le cocher, puis cliquer sur Next. Figure 6-71. Installation de Samsung Mobile SDK Manager L'installation débute et il ne reste plus qu'à accepter les différentes licences et à sélectionner tous les packages proposés en téléchargement. Il est demandé ensuite un redémarrage d'Eclipse et une dernière confirmation avant l'installation des outils dans Eclipse (Figure 6-72). Figure 6-72. Installation de nouveaux éléments
32 Chapitre 6 6.5.5 Emulateur de matériels Samsung : Remote Test Lab Samsung offre un service en ligne qui permet d'émuler plusieurs de ses appareils, notamment les téléphones et les montres avec la possibilité d'émuler un couple téléphone+montre déjà préconfiguré. Pour tester ces émulateurs, il faut se rendre sur le site de Samsung à l'adresse suivante http://developer.samsung.com/home.do puis ensuite dans l'onglet DEVICES qui liste les différents appareils de Samsung. Ainsi sur la Figure 6-73, par exemple, on voit la montre Gear 2, un Galaxy S5 et un Galaxy Note 3. Figure 6-73. Site d'émulation des matériels de Samsung Dans la section Remote Test Lab, on a la liste des matériels qui peuvent être émulés à partir du site (Figure 6-74). Figure 6-74. Choix d'un téléphone Android de type S5
Téléphones et montres connectés 33 A titre d'exemple, on peut choisir de tester un Galaxy S5 lié avec une montre Gear 2, pendant 2 heures. Cela donne la configuration matérielle suivante (Figure 6-75) : OS : Android 4.4.2 ; ID matériel : SM-G900F-KR2 with Gear2 ; durée : Reserved for 2 hour(s). Figure 6-75. Choix d'un téléphone S5 et d'une montre Gear 2 Bien choisir une durée est important car pour chaque demande, 15 minutes d'utilisation coûtent un crédit et l'utilisateur dispose d'un total de 20 crédits par jour. Ceci lui assure donc 5 heures cumulées de tests, ce qui est bien suffisant dans notre cas. Notons tout de même que l'utilisation de ce service requiert d'être enregistré auprès de Samsung. Il suffit pour cela d'avoir une adresse mail valide (Figure 6-76). Figure 6-76. Identification de l'utilisateur Une fois identifié, on a la possibilité de télécharger deux programmes (Figure 6-77) : l'un pour le téléphone (Host) et l'autre pour la montre (Wearable). A noter, sur cette même figure, le coût en crédits de cette manipulation.
34 Chapitre 6 Figure 6-77. Section de téléchargement des deux simulateurs Les deux fichiers téléchargés sont des fichiers de type JNLP (Figure 6-78) c'est-à-dire des fichiers liés à la technologie Java Web Start qui permet de déployer facilement des applications Java sur les navigateurs. Figure 6-78. Section de téléchargement des deux simulateurs Le résultat du lancement est donné sur la Figure 6-79 pour le téléphone et sur la Figure 6-80 pour la montre. Figure 6-80. Simulateur de la montre Samsung Galaxy Gear 2 Figure 6-79. Simulateur du Samsung Galaxy S5
Téléphones et montres connectés 35 Une fois les deux émulateurs lancés, il faut aussi lancer, sur l'émulateur du téléphone, le Gear Manager qui se trouve dans la liste des applications. L'icône ressemble à la Figure 6-81. Figure 6-81. Icône Gear Manager sous Android Au démarrage, le téléphone doit faire apparaître la montre dans l'état déconnecté sous une forme identique à celle présentée sur la Figure 6-82. La demande de connexion va prendre plusieurs secondes sur un PC standard (Figure 6-83). Figure 6-82. Le téléphone non connecté à Figure 6-83. Le téléphone pendant la la montre connexion Une fois la connexion établie, le simulateur du téléphone se présente comme celui de la Figure 6-84.
36 Chapitre 6 Figure 6-84. Le simulateur du téléphone connecté à la montre L'utilisateur dispose alors d'un émulateur pour le téléphone et d'un autre pour la montre, avec l'avantage qu'ils sont appariés. 6.5.6 Conclusion Jusqu'ici il a été question de l'installation et de la configuration de l'ensemble des outils nécessaires pour débuter la programmation de montres connectées de Samsung sous Tizen. Il s'agit maintenant d'utiliser ces outils avec quelques exemples simples de développement. 6.6 Importation d'un projet classique de Samsung Dans cette partie, il s'agit d'utiliser un projet réalisé par Samsung afin de tester les environnements de développement installés. 6.6.1 Projets : Provider et Consumer On peut utiliser un des exemples disponibles sur la page des développeurs Samsung (http://developer.samsung.com/samsung-gear). Ici il a été choisi l'exemple Hello Accessory qui est le premier de la section Samples (Figure 6-85).
Téléphones et montres connectés 37 Figure 6-85. Les exemples disponibles sur le site de Samsung Une fois téléchargée et décompressée, on constate que l'archive contient deux sous- répertoires, le premier contient les fichiers apk et l'autre les codes sources (Figure 6-86). Figure 6-86. Contenu de l'archive Les sources se composent de deux parties indépendantes (Figure 6-87) : l'une contient le code pour le téléphone (dossier HelloAccessoryProvider) et l'autre le code pour la montre (dossier HelloAccessoryConsumer). Figure 6-87. Les deux parties du code proposé dans le projet
38 Chapitre 6 Le code récupéré sur le site de Samsung comprend deux parties (Figure 6-88) : une destinée à la montre (qui nécessite l'utilisation de Tizen for Wearable) et une autre destinée au téléphone (qui nécessite l'utilisation d'Eclipse ou d'Android Studio). Samsung Gear Live Récupération Affichage Interface Web Services des données 1 Internet Récupération Récupération Affichage Interface Interface Affichage des données des données 2 Client Java bluetooth Client Tizen Eclipse ADT Figure 6-88. Création d'un projet 6.6.2 Programmation de la montre : HelloAccessoryConsumer Cette programmation doit être conduite à partir de l'IDE Tizen IDE for Wearable. Une fois démarré, il faut choisir Import dans le menu File (Figure 6-89) et sélectionner le type d'application à importer (Figure 6-90). Figure 6-89. Tizen IDE for Wearable : Figure 6-90. Projet de type Web importer un projet Sur la fenêtre suivante, intitulée Import Widget, il faut cliquer sur le bouton Browse… afin de sélectionner le projet HelloAccessoryConsumer précédemment téléchargé (Figure 6-91).
Téléphones et montres connectés 39 Figure 6-91. Choix du projet HelloAccessoryConsumer De retour à la fenêtre Import Widget, on peut constater que le projet HelloAccessoryConsumer est bien répertorié et il ne reste plus alors qu'à valider par le bouton Finish (Figure 6-92). Figure 6-92. Valider l'importation du projet HelloAccessoryConsumer Dans l'IDE, on retrouve le nouveau projet juste en dessous de l'ancien (Figure 6-93).
40 Chapitre 6 Figure 6-93. Importation du projet HelloAccessoryConsumer Une fois le projet ouvert, on peut sélectionner le fichier index.html (Figure 6-94) et utiliser les icônes du menu (Figure 6-95) pour basculer dans le mode de conception. Figure 6-94. Ouverture du fichier index.html Figure 6-95. Projets HelloAccessoryConsumer dans Tizen IDE for Wearable Ensuite il faut compiler le projet en utilisant le menu Project (Figure 6-96). Figure 6-96. Compilation d'un projet
Téléphones et montres connectés 41 Comme pour le premier projet, le résultat de la compilation est un fichier appelé HelloAccessoryConsumer.wgt (Figure 6-97). Figure 6-97. Le projet après compilation 6.6.3 Programmation du téléphone : HelloAccessoryProvider Il faut démarrer Eclipse, précédemment téléchargé et installé. Afin d'importer le projet, dans le menu File en haut à gauche de l'IDE, choisir Import (Figure 6-98). Cela donne accès à un écran qui permet de choisir le type de projet à importer : ici il s'agit d'un projet Android qui existe déjà dans l'espace de travail (Figure 6-99). Figure 6-99. Importation d'un projet de type Android mobile Figure 6-98. Importation d'un projet
42 Chapitre 6 Sur la fenêtre suivante, en utilisant le bouton , il faut se déplacer dans l'arborescence du disque dur et sélectionner le sous-répertoire concerné qui se trouve dans le répertoire Sources et se nomme HelloAccessoryProvider (Figure 6-100). Il ne reste plus qu'à valider comme sur la Figure 6-101. Figure 6-100. Sélection de HelloAccessoryProvider Figure 6-101. Importation du projet HelloAccessoryProvider Une fois l'importation terminée, on obtient un projet Android presque classique sauf que, dans le sous-répertoire assets, se trouve déjà le fichier HelloAccessoryConsumer.wgt qui provient d'une compilation réalisée sous Tizen (Figure 6-102). Figure 6-102. Contenu du projet Android Ce fichier HelloAccessoryConsumer.wgt est fourni par Samsung. En fait c'est le fichier généré par Tizen IDE for Wearable. Attention à ne pas remplacer ce fichier pour le moment. Il faut utiliser le clic droit de la souris pour faire une copie (Figure 6-103) de ce fichier sous le nom de HelloAccessoryConsumer_original.wgt (Figure 6-104).
Téléphones et montres connectés 43 Figure 6-103. Copie de Figure 6-104. Nouveau fichier HelloAccessoryConsumer.wgt HelloAccessoryConsumer_original.wgt 6.6.4 Vérification du téléphone et de la montre L'application Gear Manager doit être démarrée sur le téléphone (Figure 6-105) et la connexion téléphone-montre doit être activée. L'écran d'accueil comprend un accès direct aux applications installées sur la montre via le bouton . Après un clic sur celui-ci, on obtient une liste qui ressemble à celle de la Figure 6-106. Figure 6-105. Gear Manager Figure 6-106. Applications de la montre Comme pour un projet standard, il faut sélectionner le projet puis dans le menu Project, cliquer sur Build All (Figure 6-107).
44 Chapitre 6 Figure 6-107. Génération du projet HelloAccessoryProvider Pour démarrer le projet ainsi généré, aller dans le menu RunRun AsAndroid Application (Figure 6-108). Figure 6-108. Exécution comme une application Android S'il y a plusieurs matériels sur lesquels il est possible de déployer le téléphone, un nouvel écran, nommé Android Device Chooser, propose un choix à l'utilisateur. Dans notre cas, on trouve un émulateur et un téléphone Samsung S4 connecté via USB au PC. Ce téléphone apparaît dans la liste des périphériques (Figure 6-109). Figure 6-109. Choix de l'appareil de destination
Téléphones et montres connectés 45 Une fois sélectionné le téléphone, l'application destinée à la montre, passe par le Gear Manager du téléphone pour se déployer automatiquement sur la montre. Ainsi elle apparaît dans le Gear Manager (Figure 6-110) du téléphone et sur la montre. Figure 6-110. Déploiement réussi Sur la montre, on peut maintenant démarrer l'application en cliquant sur l'icône HelloAccessoryConsumer présente parmi d'autres applications (Figure 6-111). Figure 6-111. Accès à la liste des applications du téléphone On obtient alors une interface composée de trois boutons (Figure 6-112) et similaire à ce qu'on avait dans l'IDE sous Tizen IDE for Wearable (Figure 6-95). Afin de tester l'application, il suffit de cliquer sur le bouton de gauche : Connect. Une confirmation est alors demandée (Figure 6-113) et il suffit de cliquer sur OK pour revenir à l'écran précédent avec le nouveau message : StartConnection().
46 Chapitre 6 Figure 6-112. Application Figure 6-113. Connexion Figure 6-114. Application HelloAccessoryConsumer établie avec le téléphone HelloAccessoryConsumer en cours d'exécution après connexion au téléphone 6.6.5 Exportation du projet HelloAccessoryProvider sous la forme d'un fichier APK ADT Bundle permet également de générer un fichier APK qui est un installateur des applications mobiles. Il faut faire un clic droit sur le projet puis dans le menu contextuel qui apparaît, choisir Export (Figure 6-115). Figure 6-115. Exportation d'un projet Dans la fenêtre qui suit, il faut choisir Export Android Application (Figure 6-116).
Téléphones et montres connectés 47 Le fichier apk devant être signé, il faut disposer d'un jeu de clés. Si ce n'est pas le cas, il faut le créer en choisissant un répertoire (ici C:\cleandroidtizen\), un nom de fichier (ici cle.txt) et un mot de passe (par exemple objetsconnectes) comme sur la Figure 6-117. Figure 6-116. Exportation d'une application Android L'étape suivante concerne la saisie des détails du certificat et en particulier de l'Alias (Figure 6-118). Encore une fois, on peut prendre objetsconnectes comme mot de passe. Figure 6-117. Création des clés de cryptage Figure 6-118. Information sur la clé de cryptage Comme fichier destination, on peut donner le chemin d'accès vers le répertoire du projet HelloAccessoryProvider (Sources\HelloAccessoryProvider) et choisir un nom de fichier adéquat (par exemple accessory.apk). Ces informations sont à saisir dans la fenêtre représentée par la Figure 6-119.
48 Chapitre 6 Figure 6-119. Fichier de destination de l'APK à générer Une fois validé, le fichier apparaît au bout de quelques secondes (Figure 6-120). Figure 6-120. Le répertoire avec le fichier accessory.apk 6.6.6 Désinstallation de l'application HelloAccessoryConsumer précédemment installée Pour pouvoir tester ultérieurement l'installation avec le fichier apk nouvellement créé, il faut d'abord désinstaller le programme qui est déjà sur la montre. Pour cela, il faut se rendre, comme précédemment, dans la liste des applications de Gear Manager et cliquer sur l'icône en haut de l'écran (Figure 6-121).
Téléphones et montres connectés 49 On obtient alors dans le menu Désinstaller, la liste des applications qui sont susceptibles d'être désinstallées. Parmi celles-ci, on trouve HelloAccessoryConsumer qu'on doit supprimer à l'aide du signe à l'extrémité droite de la ligne (Figure 6-122). Figure 6-121. Liste des applications Figure 6-122. Applications effaçables La procédure de désinstallation va demander une confirmation par l'intermédiaire d'une popup identique à celle de la Figure 6-123. Figure 6-123. Confirmation de désinstallation On constate alors dans Gear Manager et dans la montre que l'application a disparu.
50 Chapitre 6 6.6.7 Installation sur une montre à partir du fichier APK En utilisant l'explorateur de fichier de Windows, il faut copier le fichier apk sur un emplacement du téléphone. Par exemple, on peut le copier dans le répertoire DCIM/Camera qui est l'emplacement où habituellement les photos sont stockées (Figure 6-124). Figure 6-124. Dépôt du fichier apk sur un téléphone Galaxy S4 Il faut ensuite utiliser un explorateur de fichiers sur le téléphone. Il en existe de nombreux qu'on peut installer sur son téléphone, mais le plus simple consiste à utiliser l'icône nommé Mes fichiers (Figure 6-125). Une fois démarré, il faut parcourir l'arborescence des fichiers et se positionner dans le répertoire DCIM/Camera qui contient le fichier apk précédemment déposé (Figure 6-126).
Téléphones et montres connectés 51 Figure 6-125. Accès aux fichiers Figure 6-126. Accès aux fichiers La sélection du fichier accessory.apk conduit à un menu de confirmation qui renseigne sur les autorisations que demande l'application : il faut alors choisir Installer (Figure 6-127). On obtient ensuite un message de réussite (Figure 6-128). Figure 6-127. Procédure d'installation Figure 6-128. Installation réussie
52 Chapitre 6 On peut se rendre dans le menu Applications de la Samsung Galaxy Gear 2 Lite, et constater que l'application apparaît à nouveau (Figure 6-129). Figure 6-129. Application HelloAccessoryConsumer après installation par un fichier apk 6.6.8 Installation sur un émulateur de téléphone à partir du fichier APK La création des émulateurs via le site de Samsung a été présentée au début de ce chapitre. Rappelons simplement qu'il faut se rendre sur la page suivante : http://developer.samsung.com/home.do. Cette fois, on peut choisir, par exemple, un téléphone Galaxy S4 accompagné d'une montre Gear 2 (Figure 6-130). Figure 6-130. Installation d'un simulateur ad hoc via Samsung Sur la Figure 6-130, il a été choisi un serveur au Royaume Uni. D'autres emplacements sont possibles (en Corée par exemple). De nombreux problèmes de connexions sont à déplorer sur certains serveurs. Les problèmes de disponibilité semblant se déplacer d'un serveur à l'autre en fonction du moment de la journée, une solution consiste à tenter le téléchargement d'une nouvelle machine avec un serveur attaché à un lieu géographique différent. Une fois les deux émulateurs en fonctionnement, on peut démarrer Gear Manager sur le téléphone et vérifier que l'appariement a été réalisé et que les deux matériels sont connectés. Ensuite, il faut accéder à la liste des applications installées sur la montre (Figure 6-131).
Téléphones et montres connectés 53 Figure 6-131. Émulateurs téléphone Galaxy S4 et montre Samsung Gear 2 Il faut faire un clic droit en haut du téléphone (sur le logo Samsung par exemple) et choisir dans le menu contextuel Application Manager. Figure 6-132. Installation de accessory.apk sur des émulateurs de téléphone et montre Samsung
54 Chapitre 6 Ceci fait apparaître le menu dans lequel, il faut choisir New et aller sélectionner le fichier apk correspondant c'est-à-dire accessory.apk (Figure 6-132). Il faut ensuite terminer en utilisant le bouton Installer. Une fois l'installation terminée, on peut constater que l'application apparaît dans le Gear Manager et qu'elle apparaît aussi sur l'émulateur de la montre de manière identique à ce qu'on aurait eu sur une vraie montre. Figure 6-133. Projets HelloAccessory sur les émulateurs On peut ensuite, comme sur une vraie montre, démarrer l'application (Figure 6-134). Figure 6-134. Démarrage de l'application
Téléphones et montres connectés 55 6.6.9 Conclusion Le test de ce projet réalisé par Samsung permet de vérifier la bonne configuration des installations. L'exemple proposé dans la section suivante est une opportunité pour aborder une procédure spécifique à Samsung, à savoir la demande de certificat de développeur. 6.7 Certificat de développeur : une porte ouverte vers le monde Samsung Dans cette partie, le lecteur est amené à apporter une petite modification au programme précédent fourni par Samsung. Il s'agit de réaliser une demande de certificat de développeur. Cette procédure, propre à Samsung est une étape indispensable pour ajouter des fonctionnalités avancées aux applications. 6.7.1 Nécessité d'un certificat Comme cela été montré dans la section précédente, le déploiement et la signature d'un nouveau fichier apk ne pose pas de problème particulier que ce soit sur une vraie montre Galaxy Gear 2 Lite ou sur l'émulateur de Samsung. Après la relance de Tizen IDE for Wearable et à partir du projet HelloAccessoryConsumer précédent, on peut ajouter dans le fichier index.html la phrase suivante "Ceci est une démonstration" dans le fichier, comme sur la Figure 6-135. Figure 6-135. Modification de l'application Tizen Recompiler ensuite le projet avec le menu Build All (Figure 6-136).
56 Chapitre 6 Figure 6-136. Recompilation du projet Par un retour dans le projet HelloAccessoryProvider dans Eclipse, puis dans le dossier assets, il faut supprimer l'ancien fichier HelloAccessoryConsumer.wgt par un clic droit (Figure 6-137). Figure 6-137. Suppression de l'ancien fichier HelloAccessoryConsumer.wgt A présent il ne reste plus qu'à copier le fichier HelloAccessoryConsumer.wgt nouvellement généré dans Tizen IDE for Wearable vers le dossier assets d'Eclipse. Pour cela un glisser-déposer à la souris, à travers les deux environnements, suffit.
Téléphones et montres connectés 57 Figure 6-138. Copie du nouveau fichier HelloAccessoryConsumer.wgt vers le projet HelloAccessoryProvider ouvert dans Eclipse Au moment de conclure l'opération, il faut sélectionner Copy files afin de créer une copie du fichier dans le projet HelloAccessoryProvider (Figure 6-139). Figure 6-139. Validation de la copie du fichier HelloAccessoryConsumer.wgt Le projet sous Eclipse peut ensuite être compilé puis Figure 6-140. Echec de exécuté sur un téléphone : dans notre cas c'est un l'installation Samsung Galaxy S4 (Figure 6-140). Mais avant, il faut s'assurer, à travers Gear Manager d'avoir désinstallé l'ancienne version sur la montre. On peut constater que le déploiement ne fonctionne pas. Le lecteur peut aussi essayer de déployer directement sur la montre le projet HelloAccessoryConsumer modifié, à partir de Tizen IDE for Wearable. Ce sera aussi un échec avec le message d'erreur de la Figure 6-141. En fait, pour ses montres, Samsung a mis en place différents niveaux de sécurité.
Vous pouvez aussi lire