Fan de Web, développeur, admin système, amateur de photo et apprenti entrepreneur.

Posts Tagged: Iphone

Text

Il y a encore deux ans, développer une application mobile se résumait à coder une application pour Iphone, véritable révolution du mobile et des places de marché.

Depuis, d’autres acteurs importants se sont également lancés sur ce marché, créant un véritable cauchemar pour les développeurs. En effet, que ce soit Apple, Google, BlackBerry, Nokia, Palm ou maintenant Microsoft, chaque plateforme possède son propre écosystème d’outils et d’APIs, obligeant les développeurs à devoir faire des choix ou à coder plusieurs fois le même produit.

Le but de tout cela, pour les entreprises derrières ces places de marché, est bien évidemment de garder les développeurs sur leur plateforme pour que leurs applications attirent plus de consommateurs. Mais du point de vue du créateur d’application, l’intérêt est, au contraire, de publier sur un maximum d’environnement afin de maximiser ses revenues.

 

Un langage pour les gouverner tous

Heureusement, cette demande de plus en plus importante de la communauté commence à être entendue et des solutions arrivent. Adobe l’avait compris assez rapidement en proposant la compilation d’applications IPhone depuis son système AIR … c’était sans compter sur la faculté d’Apple à verrouiller ses systèmes.

D’autres entreprises, moins importante, se sont également fait une place comme Appcelerator avec leur Titanium ou encore le projet PhoneGap. Ces produits se positionnent comme des frameworks qui permettent, à partir du même code, de créer des applications sur plusieurs plateformes.

Un parenthèse sur ces solutions : elles sont pour la plupart une extension de technologie Web (HTML5, Flash, JavaScript) ce qui montre un peu plus le rapprochement des technologies mobiles et Web, le chaînons manquant étant les WebApp, encore bien trop méconnues, mais ou là encore, Apple possède une grande longueur d’avance.

Titanium, la solution toute en un

Commençons avec Appcelerator dont le produit Titanium Mobile est surement le plus avancé sur ce sujet. Ce dernier se présente sous la forme d’un framework JavaScript qui donne accès aux APIs d’IOS et d’Android. Une fois l’application codée, le programme s’occupe, via un compilateur local ou un service en cloud, de transcoder le JavaScript en langage natif de chaque plateforme. On obtient exactement le même résultat qu’une application codée nativement. Le framework est gratuit et Appcelerator propose des formations vidéos payantes, ce qui explique la documentation limitée et une prise en main difficile.

Il est également bon de noter qu’ils proposent également un Titanium Desktop qui reprend le même principe mais pour les ordinateurs personnels sous Windows, Mac ou Linux.

PhoneGap, un navigateur dans ton application

Autre solution mais avec un fonctionnement complètement différent : PhoneGap. Le projet est open-source et supporté par une entreprise qui propose du développement pour mobile ainsi qu’un tout nouveau service de compilation en cloud.

Ici, le fonctionnement est totalement différent et se repose simplement sur le moteur WebKit embarqué sur IOS et Android. L’application ne fait que lancer un navigateur sans décoration vers un répertoire local contenant les fichiers HTML, CSS et JavaScript. Il n’y a donc pas de compilation dans ce cas. Ce fonctionnement permet de créer des applications très rapidement et sans limite, car elles sont conçues comme des sites Internet. La simplicité de la solution permet également un fonctionnement sur beaucoup plus de plateformes, on retrouve donc, en plus d’IOS et d’Android, BlackBerry, Symbian, Palm et bientôt Microsoft.

Un inconvenant découle directement de ce fonctionnement très simple, les performances sont bien moins bonnes qu’une application native et aspect visuel doit être entièrement fait à la main, produisant souvent des applications peu attractives.

Et les autres

Je ne vais pas m’étendre plus loin sur les autres solutions car je ne les connais pas assez. Il est à parier que ces produits sont l’avenir du développement mobile car même si elle n’apporte pas une réponse à toutes les problématiques - et là je pense aux jeux vidéo sur mobile - elles permettent de déployer rapidement des applications sur un maximum de médias pour un cout faible, ce qui conviendra à la majorité des développeurs mobiles.

Apple a longtemps lutté contre ces solutions, avec l’exemple le plus marquant d’Adobe, ce qui a fait douter les développeurs sur la pérennité de ces technologies. Mais depuis leur dernier SDK, le géant à la pomme autorise les applications codé depuis d’autres langages, ce qui ouvre enfin la grande porte aux développements multi-plateforme.

 

Posted via email from Un blog ? Pour quoi faire ? | Comment »

JQTouch + PhoneGap = ta webapps facile sur Iphone et Android !

Text

Je suis en ce moment en train de développer une petite application pour mobile et voulant toucher un maximum d’appareil et donc de personnes, je me suis lancé dans le développement d’une WebApp.

Un WebApp, c’est quoi ?

Derrière ce terme très tendance en ce moment, se cache un concept intéressant : au lieu de développer son application nativement sur un appareil, on développe un site Internet optimisé pour notre cible qui fonctionne exactement de la même façon. L’avantage, lorsqu’on est développeur Web comme moi, c’est qu’il n’est pas nécessaire d’apprendre un nouveau langage pour chaque cible et que, surtout, on évite pas mal de soucis liés aux validations et mises à jour de ses applications. Google l’a très vite compris en sortant son produit Voice pour Iphone sous forme de WebApp, contournant ainsi le blocage d’Apple.

Revenons à nos mobiles. Ma cible étant principalement les Iphone et les Android, j’ai été heureux d’apprendre que ces deux plateformes utilisent le même moteur de rendu : WebKit. Je ne lançais donc dans mon code et grâce à quelques sites sur le sujet, je contournais mes principaux problèmes.

Android à la ramasse ?

Mais je suis vite tombé sur un os. Je savais qu’il était possible personnaliser quelques paramètres lors de la création d’une WebApp pour Iphone, principalement l’ajout d’une icône via la meta apple-touch-icon ou encore la suppression de l’interface navigateur via apple-mobile-web-app-capable. Or, même si Android surpporte la meta apple-touch-icon-precomposed pour l’icône, le reste n’est pas supporté, ce qui est fort dommage lorsque l’on veut simuler au mieux une application native.

C’est d’autant plus dommage que Google n’hésite pas à mettre en avant ses WebApp alors que leur propre système ne peut pas en faire autant.

Autre surprise, en voulant m’amuser avec maps, j’obtiens des résultats plutôt mauvais sur Android avec une navigation complètement inutilisable alors que sur Iphone, on retrouve le même rendu que l’application native. Voulant en avoir le coeur net, j’ai donc testé le site mobile officiel de Google Maps sur mon Android … pas mieux !

Encore du travail !

Je pense réellement que les WebApps ont un rôle important à jouer sur les plateformes mobiles et il est étonnant de voir qu’Apple à une véritable avance sur le sujet sachant que leur politique est plutôt l’application native en concurrence au “tout web” de Google !

Affaire à suivre …