Blog
Quel avenir pour les PWA ?
Apple a provoqué la polémique en désactivant dans iOS 17.4 des fonctionnalités nécessaires au fonctionnement des progressive web apps, ceci dans le but de se mettre en conformité avec le Digital Markets Act. Si Apple est revenu sur sa décision, cet épisode sème le doute sur l’avenir des PWA sur iOS. Peut-on faire confiance à Apple pour que cette polémique soit sans lendemain ? Ou faut-il d’ores-et-déjà prendre des mesures préventives ?
Que sont les progressive web apps ?
Comme leur nom l’indique, ce sont avant tout des applications web, construites avec les technologies du web (HTML, CSS, Javascript, etc…) et qui s’exécutent dans un navigateur. Mais ces applications exploitent également les API standards du web pour offrir une expérience utilisateur proche de celle d’une application mobile téléchargée depuis les stores : lancement via une icône sur le bureau, notifications push, fonctionnement en mode déconnecté, accès aux contacts, etc…
Ces fonctionnalités peuvent être intégrées progressivement dans l’application en fonction des capacités de la plateforme (Android / iOS) ou du navigateur, d’où le terme de « progressive » web apps.
Pour des besoins standards, les PWA peuvent donc avantageusement remplacer les applications mobiles, sans les contraintes imposées par les stores Apple ou Google (complexité et délai de déploiement, coûts de licence, contrôle de l’application par Apple et Google, …) et avec de vrais avantages (simplicité de déploiement, développement cross platform, …).
La lente adoption des PWA chez Apple
Depuis leur lancement en 2015, les PWA ont toujours bien fonctionné sur l’écosystème Android, avec une adoption rapide par le navigateur par défaut, Chrome, des API standards du web au fur et à mesure de la publication de leurs spécifications. En revanche Apple a longtemps traîné des pieds pour mettre à niveau son navigateur Safari. De fait les PWA ont longtemps été beaucoup moins abouties sur iOS. Apple préfère en effet inciter ses utilisateurs à passer par l’App Store, en particulier pour ses propres intérêts financiers. Cependant ces dernières années étaient porteuses d’espoirs, Safari ayant intégré récemment des fonctionnalités essentielles pour une bonne expérience utilisateur avec les PWA comme les notifications push ou l’ajout d’une application au bureau.
Un coup de chaud pour les PWA en 2024 !
En 2022, l’Union Européenne a voté la mise en place du Digital Markets Act (DMA), une réglementation sur les marchés numériques qui s’impose aux grands acteurs du numérique (dont les fameux GAFAM) et qui a parmi ses objectifs de lutter contre les pratiques anticoncurrentielles. Dans ce cadre, elle impose à Apple d’ouvrir aux navigateurs alternatifs les mêmes possibilités que Safari, par exemple pouvoir lancer des PWA depuis le bureau, gérer des notifications push, etc…
Prétextant des complexités techniques importantes en regard de la faible adoption des PWA par les utilisateurs sur iOS, Apple a annoncé sa décision de désactiver dans l’Union Européenne ces fonctionnalités à partir de la version 17.4 de iOS. Une manière pour le moins inattendue et moins disante de se mettre en conformité avec le DMA !
Face au tollé, Apple est finalement revenu sur sa décision quelques semaines plus tard. Mais on doit s’interroger : quelles conséquences pour les PWA sur iOS si Apple n’avait pas fait machine arrière ? Une impossibilité d’ouvrir une PWA depuis l’icône sur son bureau : au clic, il ne se serait rien passé. Et ce n’est évidemment pas vers Apple que les plaintes d’utilisateurs perdus et mécontents seraient remontées, mais vers les éditeurs d’application, c’est-à-dire vous !
Quelles solutions pérennes sont envisageables ?
Un élément à garder en tête : l’objectif d’Apple est d’inciter les éditeurs à passer par l’App Store pour bénéficier des mêmes services qu’une application mobile. Alors peut-on faire confiance à Apple pour qu’une telle décision ne se reproduise pas ? Ou faut-il prendre les devants et anticiper ce risque ?
Des solutions existent : elles consistent à passer par la création et le déploiement d’une application mobile sur les stores. Avec à la clé l’accès à toutes les fonctionnalités du mobile.
Nous distinguons trois grandes familles de solution pour le développement d’applications mobiles, chacune ayant ses avantages, ses inconvénients et un contexte optimal d’utilisation.
De la plus simple à la plus complexe :
- La solution « webview » consiste à « repackager » la progressive web app, moyennant quelques adaptations du code, sous la forme d’une véritable application mobile, publiable sur les stores. Dans cette application, on exécute du code HTML / Javascript / CSS au sein d’un navigateur web intégré dans l’application. Pour ce type de solution nous préconisons Capacitor.
- La deuxième solution est de réécrire l’application en faisant du « développement cross platform » : une base de code unique pour générer l’application sur les deux plateformes Android et iOS. Cette solution offre un bon équilibre entre coûts de développement, performances et expérience utilisateur. Pour ce type de solution, nous préconisons React Native ou Flutter.
- La troisième solution est le « développement natif ». C’est la solution historique pour le développement d’applications mobiles. Elle consiste à développer deux applications distinctes, une pour chaque plateforme, en utilisant les outils préconisés par Apple et Google. Cette solution nécessite de gérer en parallèle deux bases de code, une pour chaque plateforme. Mais elle est optimale en termes de performances et d’expérience utilisateur. Pour ce type de solution, nous préconisons Kotlin (Android) et Swift (iOS).
Pour toutes ces solutions, nous avons une longue expérience de projets réussis et de nombreuses références. N’hésitez pas à nous contacter pour faire le bilan de vos progressive web apps et peut-être anticiper un nouveau revirement de position de la part de la firme de Cupertino.