Frameworks open source pour développer des applications fonctionnelles sur plusieurs os de smartphones (iphones, android, …)
- 21-08-2010
- Posté dans Javascript . Mobiles - Smartphones
- Écrire un commentaire
Créer une appli pour smartphones compatible pour toutes les plateformes, sans avoir à apprendre le langage spécifique pour l'OS, c'est le rêve du développeur…
Mais ça devient de plus en plus possible pour des petites applications simples grâce aux nombreux frameworks disponibles. Ces applis sont développées avec des langages destinés au web (de plus en plus, html5 et javascript), mais fonctionnent offline.
Ces applications n'auront jamais la puissance d'une application native et les performances seront toujours en deçà, mais ça peut être très pratique dans de nombreuses situations.
J'ai sélectionné 3 frameworks qui sont, je pense, les plus aboutis aujourd'hui.
Tableau comparatif
| Produit |
PhoneGap |
Titanium (Appcelerator) |
Rhodes (Rhomobile) |
| Licence |
Open-source (MIT License) | Open-source (Apache Public v2.0) | Open-source (MIT License) |
| Prix |
Gratuit | Gratuit / $199 / $499 | Gratuit / $1000 |
| Smartphones |
iPhone, Android, BlackBerry, Symbian, Palm | iPhone, Android | iPhone, BlackBerry, Windows Mobile, Symbian et Android |
| Languages |
HTML, JavaScript, CSS | HTML, JavaScript, CSS | HTML, Ruby |
| Apparence native |
non | oui | oui |
| Déploiement |
manuel | manuel | RhoSync |
PhoneGap
Tableau des fonctionnalités des smartphones actuellement pris en charge :
rouge : pas possible pour cet appareil
jaune : en cours de dévelloppement
vert : fonctionnel
| iPhone | Android | Blackberry (OS 4.5) |
Symbian | Windows Mobile |
Palm |
|
| Geolocation | ||||||
| Accelerometer | OS 4.7 | HTC only | ||||
| Camera | ||||||
| Vibration | ||||||
| Contacts API | ||||||
| SQLite Functionality | ||||||
| XMPP API | ||||||
| File system IO | Read only | |||||
| Gesture / Multitouch | Android 2.0 | |||||
| SMS API | ||||||
| Telephone API | ||||||
| Copy / Paste | ||||||
| Sounds (Play) | ||||||
| Sounds (Record) | ||||||
| Bluetooth | ||||||
| Wifi Adhoc connection | ||||||
| Maps | ||||||
| Orientation change | ||||||
| Network availability | ||||||
| Magnetometer | 3GS only |
|
||||
| Storage |
|
Source : http://wiki.phonegap.com/Roadmap
PhoneGap a été "conçu pour disparaître". En effet les APIs de PhonePap sont identiques aux API de HTML5 qui ne sont pas forcément encore implémentées dans les navigateurs mobiles.
Les applications ressemblent un peu à des pages web et PhoneGap est un peu apparenté à un navigateur.
Le projet jQuery Mobile sera compatible avec PhoneGap, ce qui permettra d'utiliser la puissance de jQuery en plus.
Titanium (Appcelerator)
Fonctionnalités supportées : géolocation, accelérometre, vibration, son (enregistrement et playback), camera, SQLite, multitouch, copier/coller, téléphone, fichiers locaux incluant les contacts et les photos.
Les applis faites avec Titanium sont compilées pour l'OS de destination. Elles paraissent donc plus natives que celles développées avec PhoneGap et sont moins gourmandes en ressources.
Contrairement à PhoneGap, Titanium expose directement les API natives du smartphone en JavaScript. Il faut donc s’attendre à des différences plus importantes entre les différentes plateformes, PhoneGap proposant des API plus génériques et communes à l’ensemble des plateformes. Mais dans tous les cas il y a autant de projets que de cibles techniques.
Rhodes (Rhomobile)
Tableau des fonctionnalités des smartphones actuellement pris en charge :
A la différence de ces derniers le navigateur local est utilisé et c’est le code Ruby ou Java (et non JavaScript) qui permet d’accéder aux fonctionnalités natives de l’appareil.
Ce sont de vraies applications natives ayant donc accès aux fonctionnalités telles le GPS, PIM contacts et camera.
Conclusion
Le choix du framework dépendra entre autres :
- de vos habitudes de programmation (javascript pour PhoneGap et Titanium, Ruby pour Rhodes)
- de l'importance d'avoir une application qui paraisse native (pour PhoneGap, ce n'est pas le cas)
- des OS que vous voulez toucher (par ex, Windows mobile n'est pas encore géré par PhoneGap et Titanium)
Je n'ai pas parlé de Sencha Touch (HTML5, CSS3 et JS) qui est très prometteur aussi, car il ne permet pas de faire une application native : ça reste une application web. Par contre, il peut être utiliser en tant que framework javascript dans une appli PhoneGap ou Titanium par exemple.
Pour une appli nécessitant des ressources importantes comme la 3D, le framework ne sera pas adapté.





Cet article est maintenant également disponible sur developpez.com :
http://pastel-pro.developpez.com/mobiles/frameworks/comparatif-applications-smartphones-open-source/
salut, j'ai un iphone, et on m'a fait savoir que skype à lancé une version qui s'appelle skype 4 pour iphone et je veux l'installer, pourriez vous m'aider à le faire en me mettre à dispotion le lien ou je peux la télcharger Merci d'avance
oui tout à fait skype 4 fonctionne parfaitement sur l'iphone avec une qualité inégale, mais dites vous avez quel iphone
Titanium vient de sortir en version 1.5 :
http://tinyurl.com/39k2h62
De nombreuses nouvelles fonctionnalité pour ios et android et 300 bugs corrigés
Un livre de référence sur phonegap vient de sortir :
http://ios.developpez.com/livres/#L9782212127454
Bonjour, merci sur cette contribution, je cherchais un framework crossplatform et rhomobile semble convenir.
Cependant, je n'ai pas tout compris sur le système de licence de rohdes : il s'agit d'une licence MIT (donc on doit pouvoir librement en faire ce que l'on veut) mais sur leur site, il faut faire mention que l'application est elle aussi devenue MIT. Quant à la version payante, je n'ai pas su trouver de tarifs sur leur site.
Pouvez vous éclairer ma lanterne sur ces points de licence car je ne veux pas m'embarquer dans une galère au final !
Merci pour votre article.
Tout dépend ce que tu veux faire : une appli pour toi que tu ne vends pas, tu n'as pas à payer. Si tu es développeur et que tu veux vendre des applis, alors il te faut une licence. Les tarifs ne sont effectivement pas affichés, il te faut les contacter : sales@rhomobile.com
tout à fait le programme skype fonctionne parfaitement sur l'iphone avec une qualité audio pas mal, mais contrairement a skype sur les smartphones sous android, skype sur android no focntionne pas bien
Applications de voip mobile sur les smartphones (iphones, android, …) application comme fring, nimbuzz permet de telephoner gratuitement par telephones mobiles 3g