Le succès de l'App Store a un peu tendance à le faire oublier, mais les web apps étaient la première solution retenue par Apple pour le développement d'applications sur iPhone. L'entreprise avait finalement changé d'avis et introduit l'App Store avec iOS 2. La suite de l'histoire est connue, le succès de l'App Store a été extraordinaire, à tel point qu'il a constitué un argument de vente en faveur des terminaux iOS.
Les applications web n'ont pourtant pas disparu du paysage iOS. Si elles ont perdu de leur superbe depuis l'ouverture de l'App Store, elles restent utilisées pour les applications qui n'ont pas droit d'accéder à l'App Store, ou qui n'en ont pas l'intérêt. Google fournit par exemple des web apps complètes pour tous ses services mobiles, tandis que les éditeurs de contenu trouvent dans cette solution un plan B pour éviter l'App Store et ses 30 % prélevés par Apple (lire : Readability lance son application web).
Les applications web permettent presque de remplacer des applications natives. Si l'on n'atteint jamais la précision ou la réactivité d'une application Cocoa, une web-app bien réalisée peut s'avérer tout à fait fonctionnelle. Sauf qu'Apple ne fait apparemment rien pour les favoriser, bien au contraire même. Les web apps souffrent de plusieurs problèmes récurrents, comme le fait qu'elles ne gèrent pas le multitâche et obligent à un rechargement de l'application quand elle repasse au premier plan. Mais c'est loin d'être le seul problème des web apps.
Contrairement aux apparences, le moteur utilisé par les web apps est différent de celui utilisé dans Safari mobile. Les web apps s'affichent en plein écran, mais ce n'est pas la seule différence avec Safari mobile. Nitro, le nouveau moteur JavaScript arrivé dans iOS avec la 4.3 qui permet à Safari mobile d'être si rapide (lire : iOS 4.3 : Safari est très rapide) n'est pas disponible pour le web apps qui restent cantonnées à l'ancien moteur JavaScript. Résultat, les web app sont 2 à 2,5 fois moins rapides que le même site affiché dans Safari mobile.
Résultats du test Sunspider qui mesure les performances d'un navigateur pour JavaScript. À gauche dans Safari mobile 4.3 (4047 ms), à droite dans une web app (10747 ms).
Les web apps sont également handicapées par l'absence de prise en charge du cache HTML5, fonction qui permet à une application de stocker du contenu en local et ainsi offrir un accès sans connexion. Le cache fonctionne parfaitement dans Safari mobile, pas dans une web app. De toute manière, ce problème court-circuité par le fait que les web apps ne gère pas le multitâche : même si le contenu est stocké en local, on ne peut y accéder sans une connexion…
Ces divers problèmes ne sont pas nouveaux. Les web apps n'ont en fait jamais été adaptées au multitâche introduit avec iOS 4 sorti en juin 2010. On peut se demander si Apple ne cherche pas, en dégradant l'expérience utilisateur des web apps, à mettre en avant son App Store et ses applications qui lui rapportent 30 % du prix de vente. S'il est incontestable que les web apps ne sont plus prioritaires chez Apple, leur expérience dégradée provient probablement plus d'un manque de temps, que d'une volonté de favoriser à tout prix l'App Store.
via The Register