En matière de développements pour mobiles, les entreprises sont aujourd’hui en demande de solutions simples et universelles permettant d’adresser aisément la variété de terminaux et de systèmes sans avoir à créer des équipes et des codes sources pour chaque plateforme.
Dans cette quête, les PWA (Progressive Web Apps) apparaissent comme l’une des voies les plus prometteuses et les plus adaptées aux développements de solutions métiers internes aux entreprises.
Les PWA exploitent les technologies de développement du Web tout en offrant un framework permettant un usage local avec un « look & feel » très proche d’une app native.
Google et Microsoft ont beaucoup contribué ces dernières années à faire de PWA une alternative crédible sur Windows, Android et ChromeOS notamment. La technologie PWA permet de créer des applications universelles qui ont la richesse d’une App native qu’elle soit utilisée sur un smartphone, une tablette, un ordinateur ou le Web. Il existe des approches alternatives comme Flutter, Electron, React Native ou Xamarin. Mais PWA a un aspect beaucoup plus universel.
Mais Apple – tout en soutenant le contraire – perçoit cette technologie comme une menace. D’une manière générale et depuis bien longtemps, l’entreprise verrouille toutes les technologies Web sur ses plateformes. L’intérêt d’Apple n’a jamais été dans l’ouverture mais plutôt dans l’enfermement de ses utilisateurs au sein de son écosystème. Sous prétexte de « sécurité » et d’ « expérience utilisateur », la firme vient à nouveau de sortir tout ce qu’elle a pu trouver comme aérofreins pour ralentir l’adoption des PWA sur ses machines.
Pour un support natif des PWA sur iOS et macOS, il aurait fallu que Safari embrasse nombre de Web API permettant d’ouvrir l’accès depuis JavaScript aux capteurs et matériels des terminaux. Lors de la WWDC virtuelle qui a eu lieu la semaine dernière, Apple a confirmé que Safari ne supporterait pas Web Bluetooth API, Web NFC API, Web Device Memory API, Web Magnetometer API, Battery Status API, WebHID, Web USB API, User Idle Detection, et autres API d’authentification supportant le fingerprinting par exemple. Bref, Apple refuse de voir Safari se transformer en système d’exploitation universel comme le font aujourd’hui Chrome et Edge sur Android, ChromeOS et Windows et met un coup d’arrêt à l’envol des PWA sur ses systèmes. Rappelons d’ailleurs qu’aucun autre navigateur Web que celui d’Apple n’est autorisé sur ses plateformes mobiles. Chrome et Edge sont présents sur l’App Store mais uniquement dans des versions très différentes de leurs versions d’origine car devant obligatoirement s’appuyer sur Safari.
Reste que les argumentaires « confidentialité et expérience utilisateur » avancés par la marque ne tiennent pas. Tout dépend de la qualité de l’implémentation des Web API sous Safari. En agissant ainsi, Apple ne fait que défendre son territoire de chasse et veut simplement éviter une universalité contre laquelle elle se bat depuis toujours. Cette décision va à l’encontre de l’intérêt des entreprises mais s’inscrit en droite ligne de sa politique éditoriale sur Apple App Store, une politique qui lui vaut aujourd’hui d’être dans le collimateur de la Commission Européenne.