Les navigateurs existent sur les mobiles depuis un moment. Au début WAP, ils sont ensuite passés au CHTML puis maintenant aux XHTML, avec parfois une implémentation de javascript et/ou de CSS.
Rien qu’avec cette phrase, on sent que pour proposer une interface cohérente sur tous les mobiles, il va y avoir du boulot…
Aperçu des technos :
Le plus ancien, et en perdition, est le WML (Wireless Markup Language). Il a été designé spécifiquement pour les appareils supportant le protocol WAP. On retrouve une architecture de type XML, et a une syntaxe proche de l’(x)HTML.
Langage très pauvre et limitant fortement la création d’interfaces, il a(vait ?) cependant deux avantages :
- la notion de « decks » et de « cards ». En traduisant littéralement, c’est un « jeux » pouvant contenir plusieurs cartes. Ainsi, il est possible en WML de charger un ensemble de données côté serveur, qui vont être présentées sur différentes pages côté client, sans avoir à recharger des données. Au lieu d’avoir plusieurs connexions vers le serveurs, et des attentes répétitives, on pouvait télécharger un volume de données plus gros, mais n’avoir qu’une seule période d’attente.
- La possibilité de programmer en WMLScript, un équivalent à javascript dans le monde web, et qui permettait d’effectuer des calculs côté client.
Ensuite - mais à part - il y a le CHTML (Compact HTML) qui a été conçu pour fonctionner avec iMode (principalement DoCoMo au Japon et Bouygues en France). Ce n’est ni plus ni moins que du HTML appauvri, avec des contraintes de syntaxe assez fortes par rapport au HTML basique. L’avantage réside, en théorie, dans sa facilité de déploiement. Un site en HTML est sensé s’adapter facilement & rapidement en CHTML. En théorie uniquement, car on ne parle là que du langage de programmation, en oubliant l’ergonomie, l’accessibilité, l’interface etc… Un mobile n’est pas un PC, on ne consomme pas l’information de la même manière, il s’agit d’une expérience différente avec des contraintes spécifiques.
Et maintenant, les navigateurs mobiles s’orientent vers une prise en charge du xHTML, avec sa branche dédiée au web mobile : XHTML-MP (Mobile Profile) pour le plus grand plaisir de tous les webmasters qui vont pouvoir transposer et transporter leurs sites, blogs, applications web vers leur mobile. Enfin … « y’a plus qu’à… » !
Navigateurs mobiles
Y’a plus qu’à en effet, car si on commence à s’orienter vers un format standard pour l’édition de sites web, on se retrouver dans la même situation qu’au début du web en terme d’interprétation et d’implémentation du code (souvenez-vous des sites pour Internet Explorer, de ceux pour Netscape, puis ceux pour Firefox, Opera, Safari, …). Ainsi, chaque navigateur va interpréter et présenter à SA manière le code que l’on aura créé. Je ne vous parle même pas de javascript, pour l’instant seule la version de Internet Explorer Mobile sous mon HTC S710 m’a permis de jouer un peu avec javascript (onglets dépliants,…).
Ainsi on se retrouve maintenant avec, entre autres le navigateur intégré à Symbian (plusieurs versions, mono-plateforme), Opéra Mini et Opéra Mobile (plusieurs versions, multiplateforme, en Java), Internet Explorer Mobile (plusieurs versions, sous différentes plateformes Windows Mobile), ainsi que Safari (une version, sous iPhone & iPod Touch) qui joue dans une classe à part, et bientôt Firefox pour mobile et peut-être DeepFish (Microsoft, développé par l’équipe de Live Labs). J’allais oublier, et c’est vrai qu’on est moins touché en France, le(s) navigateur(s) disponibles sur les Blackberry (édité par RIM). Mais maintenant qu’on peut installer d’autres navigateurs sur BlackBerry…
Il y a aussi d’autres navigateurque je ne connais pas encore bien, mais qu’il faudrait regarder: NetFront, Konqueror Embedded, OpenWave etc…
Deux visions différentes pour les navigateurs mobiles :
Si la diversité des navigateurs est déjà une contrainte importante pour l’édition de services destinés au grand public, avec un fort volume de visiteurs et donc de plateformes, il faut maintenant ajouter une différence de vision même du web mobile avec d’un côté ceux qui s’orientent vers une miniaturisation de sites web classiques (Opéra Mini & DeepFish, peut-être Firefox ?) et ceux qui veulent adapter les usages du web aux contraintes du mobile (Symbian, Internet Explorer, Safari, Firefox ?).
La miniaturisation de sites classiques consiste à afficher la page entière d’un site, en miniature, permettant à l’utilisateur de sélectionner une zone de la page qu’il va zoomer afin de voir le contenu de cette zone en détail. L’avantage principal de cette solution est la capacité de naviguer sur n’importe quel site web, sans se demander si un site mobile existe pour le même service.
- La création de sites spécifiques adaptés aux contraintes du mobile : là il s’agit tout simplement d’adapter le web à la fois à l’ergonomie d’un téléphone (boutons, molettes, taille de l’écran …) et à l’usage qu’on peut envisager en faire : quelle type d’information, de service, de contenu peut être adapté en situation de mobilité ?
Ma préférence porte à l’heure actuelle vers le second. En effet, je trouve très laborieux et inutile de devoir sélectionner une partie d’une page pour zoomer et enfin avoir accès à l’information. Je préfère largement des services spécifiques, utiles à mon utilisation nomade, rapides, etc… Lire le site de CNN via Opera Mini est tout à fait fonctionnel, mais dans mon cas tout à fait inutile. Je préfèrerai lire un flux RSS très sobre qu’arriver sur une home page blindée de publicités par exemple…
Bref, par rapport à l’article précédent où j’évoquais mon attirance pour le web mobile plutôt que pour les applications riches installées sur mobile, le choix semble encore une fois difficile à faire…
Et vous, avez-vous déjà essayé de développer des pages web ou services pour mobile ? Comment vous en êtes-vous sorti (ou pas !) ?
Au passage j’en profite pour vous encourager à visite le site DevelopersHome.com qui est une bonne source d’information pour débuter (ou progresser…) sur le développement web mobile, dans les différentes technos vues ici.