
Les cinq grandes technologies pour développer des applications clientes ‘lourdes’ et toucher un maximum de téléphone sont :
De façon plus anecdotique on peut trouver du développement spécialisé pour OS Symbian ou utilisant le langage Python.
Flash lite
Flash Lite est le lecteur flash des navigateurs d’OS de bureau, mais porté sur mobile, à quelques différences près. La version 2 de Flash Lite est presque un équivalent de la version 7 du plugin web de navigateurs sur ordinateur, avec des fonctions en moins comme la prise en charge de la vidéo. Flash Lite est optimisé pour interagir avec l’interface d’un téléphone, et s’adapter en fonction de la taille de l’écran. L’avantage avancé bien souvent est la possibilité de développer une même animation et qu’elle reste compatible pour un parc large de téléphones.
Avantages
- Le coût de développement principalement. Une application flash peut passer aisément sur tout un parc de téléphones sans la moindre retouche. Souvent une application Java doit être retouchée pour différentes modèles de téléphones.
- Des outils de test assez évolués (Flash 8 mobile Emulator, Adobe Device Central)
Inconvénients
- Sa très faible prise en charge par l’ensemble du parc des mobiles. Les constructeurs sont frileux à l’idée d’embarquer le flash sur leurs téléphones. Outre le coût d’un player flash, les opérateurs voient peut-être d’un mauvais œil ce moyen de consommer du contenu en dehors de leur propre portail wap. En France, il n’y a guère que Nokia et Sony-Ericsson qui proposent cette technologie d’office sur les téléphones.
- Les versions 2.1 et surtout 3.0 sont les plus intéressantes mais sont encore rares.
- Flash sur mobile semble ne concerner qu’un public trop restreint. La communauté Flash/Flex ne semble pas très ouverte sur le sujet Flash Lite.
Quelques chiffres (Source VisionMobile)
- 194% de progression de mobiles équipés Flash Lite entre 2005 et 2006
- Prévision de 220 millions de mobiles équipés d’ici la fin de l’année 2006 et ils prévoient le milliard en 2010.
- Au Japon, 40% des mobiles étaient équipés de Flash Lite en 2006, supportés par 4 opérateurs.
- Sur le service de NTT Docomo qui rassemble 10 millions d’utilisateurs, les utilisateurs dépensent en moyenne 5$ pour avoir accès à leurs chaines.
Liens
Liste des téléphones compatibles flash lite : http://www.adobe.com/mobile/supported_devices/handsets.html
Windows mobile
Pour Windows Mobile, l’application peut être écrite en ‘code natif’, en C ou bien en code ‘managé’, avec une machine virtuelle en utilisant le framework .Net (Compact Framework, CF)
Avantages
- Outils de développement très bons.
- Une même application peut tourner sur tous les téléphones Windows Mobiles (compatibilité ascendante des versions pour le CF).
Inconvénients
- Les téléphones Windows Mobile ne sont pas si nombreux
- Pour un programme en C, développements plus longs et plus complexes
- Pour un programme qui utilise le framework .Net, nécessité de la présence du CF sur le téléphone.
Java Micro Edition
Java ME (Micro Edition) est l’édition mobile de la plateforme Java.
Avantages
- Java est la technologie la plus répandue sur les téléphones (près de 2 milliards de téléphones selon Sun)
- Java est la technologie la plus médiatisée pour installer des applications supplémentaires sur les téléphones, la mention sur la compatibilité Java est même présente sur les fiches des téléphones dans les magasins.
- Système de déploiement efficace
- La technologie est très sûre. L’application ne peut pas accéder à des fonctions sensibles du téléphone et ne peut pas mettre en péril son fonctionnement.
Inconvénients
- Hétérogénéité des versions de Java et des spécifications supportées. (La JTWI – JSR 185 évoquée plus haut, remédie en grande partie à ce problème, mais pas toujours entièrement sur les fonctions multimédia)
- Une application faite en Java peut ne pas marcher d’une marque de téléphone à l’autre suivant le respect stricte ou non des spécifications par le constructeur.
- L’interface graphique d’une application Java mobile est beaucoup plus complexe à personnaliser qu’avec les autres technologies.
Android
Android est constitué d’un système d’exploitation, d’une suite de développement. Le tout permettant une parfaite intégration d’un logiciel au sein de l’OS.
Avantages
- Son principal avantage est d’être fourni gratuitement aux fabricants de portable.
- Le langage de développement est le Java. Il est d’ailleurs plus proche du J2SE que du J2ME.
- Il n’y a pas de problématique liée au JSR et autre comme en J2ME ! La plateforme est faite pour proposer tout les services mis à disposition par le téléphone « Qui peut le plus peut le moins ! ».
- Les interfaces peuvent être développées de deux façons :
- Soit par le développement à base de Layout et de composants graphiques (vision développeur) ;
- Soit par la définition de fichier XML (vision graphiste).
- La globalité de la plateforme Android est régit par des autorisations et des règles de fonctionnement qui garantissent la pérennité du système dans sa globalité même en cas de dysfonctionnement d’une application.
- La plateforme Android jouie d’une grande popularité et bénéficie d’une communauté très active.
- Le grand plus est la parfaite intégration de tout le portefeuille d’application proposé par google (GoogleMap, GMail, GoogleCalendar, Youtube …).
Inconvénients
- Le principal inconvénient est le manque de téléphone fonctionnant sous cette plateforme. Gageons que cela va vite évoluer !
- Demande une formation sur le langage et la philosophie de développement. On ne développe pas une application Android comme on développe une application Swing en Java.
- Actuellement l’évolution rapide de la plateforme fait qu’une application doit souvent être retouchée afin de rester compatible avec la version en cours.
