p. 08 Partez à la découverte d'Android
p. 22 Installez vos outils
p. 40 Créez votre première application
p. 66 Améliorez votre application
p. 86 Retrouvez votre smartphone avec la géolocalisation
p. 114 Votre application finale !
Qui n’a pas de smartphone et/ou de tablette ? Avec plus d’un foyer sur deux déjà équipé d’un smartphone (sans compter les mobiles de base), le smartphone parait aujourd’hui comme un objet faisant partie à part entière de notre quotidien. Objet indispensable et parfois culte, le smartphone a bouleversé profondément nos habitudes et usages alors que celui-ci n’est apparu qu’il y a tout juste une dizaine d’années. Le succès du smartphone est indéniablement lié à l’offre logicielle alors disponible du bout des doigts. Dans l’univers du smartphone, Google et Apple se taillent la part du lion et se livrent une bataille via markets interposés (respectivement Google Play et App Store). Le market offre aux développeurs des possibilités de diffusion de leur logiciel jusqu’alors inégalées. Dans un premier temps, l’offre logicielle tant à retranscrire l’existant des plateformes PC, MAC, mais sans grande originalité, puis dans une seconde phase, apparaît rapidement une offre pléthorique tous azimuts avec une place significative des jeux mobiles qui tirent le market vers le haut. Aujourd’hui, les catalogues Google et Apple proposent plus d’un million d’applications : santé, média, shopping, sport, etc. L’objectif à peine caché des deux géants est de gagner la confiance des développeurs en leur offrant des outils de développement sans pareil et des possibilités de revenus non négligeables via leur market. L’ère des applications mobiles s’accélère grâce à la maturité des outils de développement qui ne cessent de s’améliorer en imposant une veille technologique constante. Adepte de C/C++, Java, Objective C, C#, HTML5/CSS/JavaScript et encore bien d’autres, les développeurs trouveront tous leur langage de prédilection pour satisfaire leur soif de coder dans un système mobile. Avec des conditions aussi favorables, il y a un intérêt majeur à se placer sur ce nouveau marché qui plus est en pleine croissance. Chez les développeurs, les caractéristiques techniques extraordinaires des smartphones agissent alors comme un révélateur de talents et d’imagination. L’aspect téléphonique qui était le principal attrait dans la mobilité n’est devenu qu’un composant logiciel parmi d’autres. Les systèmes se sont dotés de différents matériels très faciles à mettre en œuvre grâce à l’abstraction des couches logicielles. Les capteurs de la plateforme smartphone/tablette (accéléromètre, proximité, luminosité, caméra, GPS, GSM, Bluetooth, WIFI ...) participent de façon évidente à la conception logicielle alors que ceux-ci étaient catalogués comme complexes à mettre en œuvre dans les systèmes embarqués plus classiques. Ce qui était réservé à l’électronicien est désormais à portée de main des informaticiens, les métiers ont décidément bien changé... L’arrivée des « watch » ne fait que conforter le rôle des smartphones dans notre vie quotidienne. Ces nouveaux objets, maintenant désignés par les marques de grand luxe, sont révélateurs d’un nouveau tournant, les objets connectés sont des merveilles technologiques et en plus ils sont beaux ! Décidément, il n’y a plus d’obstacle à développer des logiciels mobiles qui ont en plus la possibilité de s’appuyer sur le cloud doté de possibilités incommensurables. L’avancée des IoT va permettre de franchir une nouvelle étape dans les années voire les mois qui arrivent. Le catalogue des applications mobiles sera alors transformé pour répondre à ce nouveau marché qui sera vraisemblablement d’une croissance exceptionnelle. Il est prévu plus de 50 milliards d’objets connectés d’ici 5 ans... de quoi bouleverser notre quotidien. Les tablettes et smartphones seront des acteurs majeurs dans cette nouvelle infrastructure, d’ailleurs Google se positionne avec Brillo pour répondre à ce nouveau défi. Smartphone ou tablette, la mobilité est en ordre de marche, on peut considérer que ce n’est que le début, au vu du premier smartphone Android mis à disposition en 2005 ! Les conditions matérielles sont vraiment réunies, les outils de développement sont stables et performants. Les développeurs n’ont plus qu’à faire fonctionner leur imagination (réputée sans limites...) pour mettre en œuvre ces plateformes. Alors comme on dit : à vos API et partez !
Frédéric Camps
p. 08 Écrivez votre premier script « Shell »
p. 16 Découvrez les capteurs de votre smartphone
p. 24 Comment intégrer des capteurs dans une application ?
p. 40 Utilisez des tags NFC
p. 52 Localisez les caches à l'aide de leurs coordonnées GPS et stockez l'information
p. 64 Communiquez en Bluetooth
p. 80 Envoyez des SMS et utilisez l'API Google Maps pour afficher des cartes
p. 92 Préparez votre application pour le store
p. 106 Internationnalisez votre application et touchez le plus de monde possible
p. 110 Diffusez votre application sur Google Play
p. 118 Gagnez de l'argent ! Beaucoup d'argent… ?
La téléphonie mobile connaît un essor absolument incroyable. Qui aurait parié en 2005, au moment du rachat d’une startup du nom d’Android, que 10 ans après il serait possible d’avoir dans sa poche un smartphone à 6 processeurs ? Les smartphones actuels ont nettement dépassé le concept même de la téléphonie, la partie téléphonie n’est qu’un composant parmi d’autres, l’utilisation de nombreux capteurs a radicalement changé les développements logiciels. Pourquoi ce changement ? Tout d’abord, la simplification des API a permis à de nombreux développeurs d’intégrer des capteurs dans leur application alors qu'il n'y a encore pas si longtemps il fallait avoir des bagages en électronique pour mettre en œuvre de tels logiciels. Sous Android, les couches d’abstraction logicielle ont permis de s’affranchir de nombreuses difficultés de portage, ainsi une application fonctionne aussi bien sur une tablette que sur un smartphone. Avec ce principe, Google a fait table rase et a redistribué les cartes. Ce sérieux dépoussiérage a révélé de nouveaux concepts dans le domaine du logiciel embarqué liéà la téléphonie avec l’utilisation de nombreux capteurs : accéléromètre, gyromètre, GPS, capteur de luminosité, de pression, de proximité, NFC... D’autres concepts sont alors apparus avec les capteurs composites, mélange d’informatique et d’électronique. Nous sommes dans la virtualisation des capteurs électroniques. Le résultat est époustouflant ! De nouvelles gammes de logiciels sont alors à portée de main, et le développeur peut encore exercer son imagination pour intégrer ces techniques dans des applications d’une diversité incroyable !
Dans ce numéro, qui sera une version « avancée » du hors-série n°82 « Créez votre première application Android » (nous vous conseillons de vous référer à ce hors-série si vous n'avez jamais installé le SDK Android ou utilisé Android Studio), nous allons découvrir avec des exemples concrets et didactiques la mise en œuvre de ces capteurs au travers d’une application de géocaching qui utilise les capteurs suivants : accéléromètre, gyromètre, magnétomètre, NFC, GPS, et capteur composite. Nous aborderons également la communication Bluetooth et SMS pour réaliser des communications en P2P et longues distances. Dans cette phase de développement, nous passerons en revue les concepts essentiels afin que vous puissiez intégrer facilement les capteurs de la plateforme dans vos propres applications, même celles déjà existantes. L’intérêt des capteurs, c’est qu’ils donnent « vie » aux applications, car ils sont en quelque sorte le liant entre le monde physique et le monde du virtuel et de l’impalpable que sont les logiciels. Les cas d’utilisation sont vastes, le challenge reste alors de trouver l’idée originale qui fera de votre application un véritable best-seller ! Si vous avez une idée sur ce sujet depuis longue date, ce hors-série vous propose maintenant de passer à l’action...
En parlant de best-seller, pourquoi ne pas tester la popularité de votre application tout en rémunérant vos heures de développement ? Dans une seconde étape de ce hors-série, nous allons découvrir les différentes étapes de monétisation de votre application sur le store Google Play. Les stores de téléphonie mobile proposent aujourd’hui aux développeurs des opportunités invraisemblables de diffusion logicielle au niveau international en à peine quelques clics (ou presque...). Bien sûr, cette étape doit faire l’objet d’une attention particulière comme l'internationalisation de l’application, l’optimisation des codes, la protection de votre application, autant de sujets qui vont assurer le succès de la diffusion. Les stores ont imposé une grande compétition et, pour s’en apercevoir, il suffit de consulter notamment Google Play pour un type d’application : le choix est pléthorique. N’hésitez pas à devenir un compétiteur international ! C’est parfois juste l’originalité de vos développements qui fera la différence et qui vous rendra riche ! Mais avant de passer par la case « cash », découvrons ensemble les capteurs de votre smartphone...
Pour Adèle.
Frédéric Camps
Déployez votre solution de Single Sign On ! Intérêts et avantages de...
Lire plus ➤Arduino / RP2040 / STM32 / ESP Programmez vos microcontrôleurs en...
Lire plus ➤