Frameworks open source pour applications smartphones multiplateformes

Comparatif des solutions Phonegap, Titanium, Rhomobile

Marc Farré - Pastel.Pro

Cet article est un comparatif de solutions open source pour créer des applications pour smartphones qui seront fonctionnelles sur plusieurs OS (iOS, android…).

Commentez ♪

- Titre : Frameworks open source pour applications smartphones multiplateformes

- Auteur : Marc Farré - Pastel.Pro

- Parution : 3 novembre 2010

- Licence : Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright ® 2010 Marc Farré - Pastel.Pro. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- I. Tableau comparatif

- II. PhoneGap

- III. Titanium (Appcelerator)

- IV. Rhodes (Rhomobile)

- V. Conclusion

- VI. Sources

I - Tableau comparatif

Produit

PhoneGap

Titanium (Appcelerator)

Rhodes (Rhomobile)

Licence

Open source (MIT Licence)

Open source (Apache Public v2.0)

Open source (MIT Licence)

Prix

Gratuit

Gratuit / $199 / $499

Gratuit / $1000

Smartphones

iOS, Android, BlackBerry, Symbian, Palm

iOS, Android

iOS, BlackBerry, Windows Mobile, Symbian et Android

Langages

HTML, JavaScript, CSS

HTML, JavaScript, CSS

HTML, Ruby

Apparence native

non

oui

oui

Déploiement

manuel

manuel

RhoSync

II - PhoneGap

Tableau des fonctionnalités des smartphones actuellement pris en charge :

Source : http://wiki.phonegap.com/Roadmap

PhoneGap a été « conçu pour disparaître ». En effet les API 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.

III - Titanium (Appcelerator)

Fonctionnalités supportées : géolocalisation, accéléromètre, vibreur, son (enregistrement et playback), caméra, SQLite, Multitouch, copier/coller, téléphone, fichiers locaux incluant les contacts et les photos.

Les applications 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.

IV - Rhodes (Rhomobile)

Tableau des fonctionnalités des smartphones actuellement pris en charge :

À la différence des précédents frameworks, 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 la caméra.

V - 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 exemple, Windows Mobile n'est pas encore géré par PhoneGap et Titanium).

Je n'ai pas mentionné Sencha Touch (HTML5, CSS3 et JavaScript) 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 utilisé en tant que framework JavaScript dans une application PhoneGap ou Titanium par exemple.

Pour une application nécessitant des ressources importantes comme la 3D, le framework ne sera pas adapté.

VI - Sources

- surgeworksmobile.com

- infoworld.com

- mashable.com

- stackoverflow.com

- jonathanstark.com

- blog.ippon.fr

- tag4.us