Photo de la ville de cordova en espagne

Noël 2019, Apple a fait une annonce importante qui impacte Cordova et les autres systèmes similaires : fini le composant UIWebView. Pour les non-développeurs, qu’est-ce que cela implique ? En quoi cela intéresse les agences web et leurs clients ?

The App Store will no longer accept new apps using UIWebView as of April 2020 and app updates using UIWebView as of December 2020.

Décembre 2019, Apple, sur son site Développeurs.

Pour saisir l’enjeu, il faut comprendre trois choses :

  • Qu’est-ce que Cordova ?
  • Qu’est-ce que l’UIWebView
  • Quelles sont les conséquences pratiques de cette décision de la firme?

C’est ce que je vais tenter de vous expliquer dans la suite de cet article.

Qu’est-ce que c’est Cordova ?

C’est un outil de développement actuellement très utilisé. Son principe est simple : le développeur crée des pages web interactives quasiment comme pour n’importe quel site web. Il tape quelques lignes de commandes, ajoute quelques lignes et obtient une application IPhone ou Android. Plus exactement, il obtient une application qui ouvre cette page HTML et fait le lien entre celle-ci et le matériel de votre smartphone comme le GPS ou les caméras.

Quand les agences Web ont compris l’engouement pour les applis, elles ont été ravies de l’existence de Cordova : pas besoin de formation longue ou de recrutements de personnel formé au développement Android et IPhone. Génial non ? En plus, un développeur web, cela coûte moins cher !

Qu’est-ce que UIWebView ?

UIWebView, c’est un élément de l’outil de développement mis à disposition par Apple pour créer une application mobile pour IPhone. D’un point de vue pratique, on donne à ce composant une adresse de site Web ou d’un fichier au format HTML dans le téléphone, et il l’affiche dans une page web ni vu, ni connu. C’est la base de Cordova pour produire l’application pour votre IPhone.

Cela fait un moment qu’Apple a signalé ce composant comme « déprécié ». Dit autrement, la firme annonçait depuis 2014 : « les gars, ce truc, il faut l’oublier, on va le dégager ! » Même s’ils y mettent les formes – on parle d’une firme qui maîtrise la communication, mais c’est complétement cela: ils font la pluie et le beau temps.

In apps that run in iOS 8 and later, use the WKWebView class instead of using UIWebView.

Apple, documentation officielle

Il ne faut plus utiliser UIWebView mais WKWebView: voilà leur message. Autant dire que la communauté utilisant Cordova a été prévenue. Cela n’a pas empêché de continuer à développer et vendre ce type d’app. Mi 2018, Cordova a commencé à travailler sur cet autre composant plus limité et commence à produire des solutions.

Mais quel est le problème ?

WKWebView ne permet pas d’ouvrir un fichier stocké dans le téléphone mais uniquement depuis un site web. Pas d’application Cordova sans avoir accès à Internet. Sacré problème !

La solution trouvée a été d’intégrer un serveur web dans le téléphone.  Cela fonctionne, mais je pense que vous l’aurez compris : Apple n’aime pas cela et n’a pas envie de cela. Si cela ne dérangeait pas, le composant WKWebView pourrait lire un fichier en local directement.

Quel est l’impact pour votre application mobile ?

A moins de renoncer aux 25% d’utilisateurs de smartphone qui possèdent un IPhone (qui sont aussi ceux qui dépensent le plus via les appstores), cela implique qu’en avril 2020, il faudra mettre à jour avec le nouveau composant, le WKWebView. Au travail les agences web !

C’est aussi un pari sur l’avenir : Cordova semble avoir trouvé comment continuer d’exister, mais jusqu’à quand ? Cette histoire, c’est un rapport de force entre une société richissime et une communauté de développeurs. Quelle est la pérennité de ce type de solution ? D’autres technologies, basées sur le même principe ont la même difficulté et probablement la même inquiétude.

La position de TAKOTEK

Face à ces interrogations, chacun peut avoir son avis. Le choix de TAKOTEK, c’est d’utiliser la technologie Flutter, proposée par Google qui permet de créer des applications sur Android, ChromeBook, IPhone, MacOs, Web et Windows.

La différence de principe avec Cordova?

Cordova crée une application dans le langage de l’environnement cible qui se contente d’ouvrir une page Web et de permettre à cette page d’accéder à certains composants du téléphone (comme le GPS ou la caméra).

Flutter vous permet d’écrire l’application dans un langage, le DART et l’environnement traduit le code source dans la langue de l’environnement cible. Cordova, c’est hybride, Flutter, c’est Natif.

Notre mission, c’est de vous fournir une application mobile qui répond à vos besoins et va au dela de vos attentes… dans la durée. Le choix de faire confiance à la technologie de Google nous a semblé évident.

Tags

Les commentaires sont fermés.