Les Progressive Web Apps s'intègrent un petit peu mieux à iOS 12.2

Stéphane Moussie |

iOS 12.2 améliore un peu la prise en charge des Progressive Web Apps (PWA), ces sites web qui empruntent des fonctions à des apps natives, comme le fonctionnement hors ligne ou les notifications push (une liste de PWA est consultable ici).

Pour installer une PWA sur iOS, il faut ouvrir le menu de partage de Safari et sélectionner l’option « Sur l’écran d’accueil ».

Grâce au nouveau système, on peut enfin utiliser le geste habituel du glissement vers la droite pour revenir en arrière dans une PWA. Autre amélioration notée par le spécialiste Maximiliano Firtman, les PWA ne sont plus automatiquement redémarrées quand elles sont quittées. Ce comportement en rendait certaines inutilisables, car il fallait se reconnecter à chaque fois.

Une autre avancée est la prise en compte des liens hypertextes, de sorte que ce soit la PWA qui s’ouvre et non le site web correspondant dans Safari.

Tout n’est pas parfait cependant, loin de là. Outre de nombreux bugs à corriger, Apple doit faire encore beaucoup de travail pour que les PWA s’intègrent de manière viable à iOS. Il manque notamment la gestion des notifications push et la synchronisation à l’arrière-plan.

Apple traîne des pieds pour prendre pleinement en charge ce type d’apps qui contourne l’App Store. À l’inverse, Google les pousse à fond, allant même jusqu’à les mettre au même niveau que les apps natives dans les réglages d’Android.

avatar lord danone | 

Qu’est ce que je déteste apple à freiner des 2 pieds quand il s’agit de rendre la vie des devs plus simple.

avatar fornorst | 

@lord danone

Par contre ça rendrait la vie des utilisateurs plus complexe en ne garantissant plus une validation par Apple. A voir ce qui est le mieux et pour qui

avatar lord danone | 

Installer une webapp n'est pas plus complexe que d'ouvrir un site web. Installer une webapp n'est pas plus dangereux que d'ouvrir un site web. Si tu vas sur un site web, c'est que tu as confiance dans ce site, l'installer en tant que PWA ne complexifie rien et n'augmente pas le risque encouru, ca n'a donc rien à voir, tout ceci est juste de la politique.

avatar byte_order | 

@fornorst

Les PWA tournent sur le moteur web de l'OS.
Apple a un contrôle *total* sur le moteur web de iOS.
Elle est donc parfaitement capable de garantir ce qu'une PWA peut faire ou ne pas faire sur iOS.

Et tout comme elle ne valide pas chaque site web, ne protégeant explicitement pas votre expérience utilisateur quand vous vous balader sur le web librement, elle le fait en s'assurant que son moteur web, lui, n'ira pas faire n'importe quoi et restera dans les clous de son sandboxing, quelque soit le code envoyé par les sites web.

C'est pareil pour les PWA, y'a juste plus l'habillage du navigateur autour.

Par contre, cela menace son écosystème car plus une app PWA sera suffisante pour adresser toutes les plateformes en même temps, moins le développement natif pour iOS sera pertinent pour bon nombre de trucs, rendant la plateforme finale plus interchangeable, donc moins différenciant. Et ça, cela menace ses parts de marché et tout ce qui dépend de la taille de sa base iOS installée.
L'AppStore en premier lieu, à court terme.
Mais aussi, tout bêtement, le switch de plateforme, plus transparent si vous utilisez de plus en plus de PWA plutôt que des apps natives.

Pire, les PWA c'est aussi hors iCloud, les données réelles iront dans le service web.
Et encore pire, les PWA peuvent proposer de l'achat in-app sans que Apple puisse réclamer sa taxe dessus.

avatar inumerix | 

@byte_order

C’est exactement ça !

avatar Ichigo-Roku | 

Ça arrange surtout les développeurs web pour qu'ils aient l'illusion de faire du développement mobile lol, il n'y a que pour ce type de développeurs que c'est une bonne idée les PWA...

avatar lord danone | 

C'est dingue cette fermeture d'esprit... Toutes les entreprises n'ont pas les ressources humaines pour faire du natif pour toutes les plateformes... On parle quand même d'API officielles, qui fonctionnent très bien sur Android ou desktop, (pour parler de l'API Push qui m'intéresse personnellement), qui seraient extremement utiles pour ceux qui n'ont pas les moyens de faire du natif Android, iOS, Mac, Windows et qui comme moi estiment qu'il est possible de coder des app web de qualité.

avatar Kounkountchek | 

@Ichigo-Roku

C’est surtout qu’il y a beaucoup d’apps qui ne nécessitent absolument pas d’être en natif.

avatar MachuPicchu | 

Ça serait bien si ça pouvait venir remplacer les apps classiques, qui sont peu pratiques à l’usage. Il faut souvent télécharger des apps même quand on en fait un usage très occasionnel (exemple, les apps des compagnies aériennes), il faut même parfois créer un compte. Des web apps « contextuelles », éphémères, qui s’installeraient via des QR codes, ou des balises beacons, ou encore via un lien dans un mail, rendraient l’expérience utilisateur bien plus transparente. Ou bien un système complètement différent des apps, qui ne viendrait pas s’installer sur le smartphone quand cela n’est pas nécessaire. SJ avait raison, au final, quand il s’opposait à la création de l’app store. Les apps sont surtout avantageuses pour Apple et les développeurs, au détriment des utilisateurs. Le problème c’est que l’app store est devenu la poule aux œufs d’or pour Apple, avec les commissions, ça va être compliqué pour faire machine arrière maintenant.

avatar Woaha | 

@MachuPicchu

Bien d’accord pour les apps que l’on utilise rarement comme compagnies aériennes ou trains transport etc... en mode web app c’est mieux surtout quand on a pas tellement de place disponible sur l’appareil.

avatar sImPOD | 

@Woaha

Et là on tient effectivement un autre avantage des WebApp;
Outre shunter les pubs, on shunte également les Apps obèses qui pèsent parfois bien plus lourd que les services rendus

avatar Aimstar95C | 

@MachuPicchu

Tu ravis tous les hackers toi ?

Un clique sur un lien dans un mail et la web app s’installe directement et siphonne tout ce qu’elle veut ?

avatar lord danone | 

Une site web, qu'il soit installé en tant que pwa ou consulté dans un navigateur a exactement les mêmes droits d'accès à l'OS, càd quasiment aucun, c'est sandboxé à mort... Qu'un lien malveillant t'amènes sur un site web ou t'installes la pwa associée (ce qui me semble impossible), ne change donc absolument rien. Désinformation.

avatar koko256 | 

@lord danone

Cela ne change donc absolument rien. Désinformation !

J'suis mal dans ma peau en coureur très beau
And I just go with my pince à vélo
J'suis bidon, j'suis bidon

avatar MachuPicchu | 

@Aimstar95C

On peut déjà ouvrir des liens web avec des QR codes, c’est pas tellement différent. On pourrait aussi imaginer qu’Apple pourrait mettre certaines restrictions pour les web apps: on aurait ainsi les web apps pour réaliser des tâches assez simples et temporaires, comme la consultation d’informations (je pensais aussi aux musées ou autres endroits à visiter par exemple, qui pourraient proposer du contenu via une web app, ça évite de devoir chercher une app dans l’app store, la télécharger puis la désinstaller ), et d’un autre côté on aurait les apps classiques, à télécharger depuis l’app store, pour des tâches plus complexes et qui nécessiteraient un accès plus complet au système, comme les apps de productivité.

avatar pat3 | 

@MachuPicchu

"je pensais aussi aux musées ou autres endroits à visiter par exemple, qui pourraient proposer du contenu via une web app, ça évite de devoir chercher une app dans l’app store, la télécharger puis la désinstaller"

Euh… tu cherches pas grand chose avec une app classique. T’es sur le site du musée, il te propose son app, tu cliques une fois pour aller sur l’AppStore, une autre fois pour l’installer… wow, trop difficile.

Franchement les webapps, c’est plus d’accès au matériel pour les développeurs, et désolé, ils sont déjà suffisamment intrusifs dans les apps traditionnelles.Pas étonnant que Google les pousse, ils fourniront des outils aux devs pour récupérer nos infos en passant parleurs web apps…

avatar MachuPicchu | 

…quand on pourrait directement mettre une web app en raccourci depuis leur site ?. Ça évite aussi de consommer trop de data à l’étranger en téléchargeant une app, ça limite aussi la collecte de données perso, ça bouffe pas de stockage. Apple pourrait aussi créer un système qui supprime automatiquement la web app dès qu’on quitte l’endroit.

avatar byte_order | 

@Aimstar95C
> On pourrait aussi imaginer qu’Apple pourrait mettre certaines restrictions
> pour les web apps

C'est *déjà* le cas. Les PWA sont des "apps" que de nom, derrière y'a une app d'Apple, un PWA Browser, c.a.d. une app Safari "déshabillé" dédié aux seules sites "PWA".
En pratique, il s'agit juste d'un site web conforme à un standard qui permet de l'exécuter même sans connexion, à partir de données mis en cache préalablement.

Cette exécution se fait dans le même environnement contraint, sandboxé, que la visite de n'importe quel site web, les possibilités de siphonage sont donc exactement les mêmes : très très très limitées, dûes aux failles zéro-day du moteur web d'Apple.

(Qu'elle est d'ailleurs seule à maintenir, contrairement au moteur Chrome ou Firefox, ce qui constitue en fait un plus gros risque en soit...)

Les restrictions spécifiques d'Apple pour les PWA semblent surtout faite pour protéger l'écosystème natif d'Apple plutôt que de protéger l'utilisateur final : toutes les fonctionnalités avancées PWA qui permettrait de faire la meme chose que pas mal d'apps natives sans gros besoins, comme les notifications, l'accès à la webcam, sont rejetés.

avatar sImPOD | 

Et ces PWA sont en outre un très bon moyen de contourner la pub sous iOS ; on bénéficie alors du bloqueur de contenu de Safari.
Pour ainsi dire indispensabl,dans le cas des Apps de presse en ligne

avatar cecile_aelita | 

Comment intègre t on une PWA sur iOS ? De la même manière qu’une web app classique : « partager -> ajouter à l’écran d’accueil » ?

avatar lord danone | 

Exactement. Le terme PWA signifie juste que la webapp répond à des critères précis qui sont par exemple la connexion en https, ou encore la gestion du hors-ligne. Plus généralement il faut que l'app remplisse toute une checklist pour répondre au "label" PWA garantissant une exécution de l'appli la meilleure possible sur n'importe quel plateforme mobile et quelque soit la connexion réseau.

avatar cecile_aelita | 

@lord danone

Ok donc PWA c’est une webapp optimisé en gros !
Merci ?

avatar lord danone | 

C'est une webapp qui est censé se charger vite via https et se lancer même quand tu n'as pas de réseau :) Ca n'indique par contre en rien que l'app n'est pas codée avec les pieds ou que ce n'est pas un site frauduleux.

avatar Nesus | 

C’est amusant, parce que c’est ce que Steve Jobs voulait pour l’iPhone à la base. Tout le monde s’est moqué de lui et maintenant les devs le veulent. L’ironie de l’histoire...

avatar byte_order | 

Et que dire de WebOS, clairement 15 ans en avance sur son temps...

CONNEXION UTILISATEUR