Sujet sur Discussion Gestion:Tâches/Liste/245

Résumé par Antoine Mercier-Linteau
Options Complexité

de développement

Chance d'être

acceptée par l'App Store

Support

caméra

Support

JS

Support

Éditeur

Visuel

Hors-ligne Notifications Facilité

d'installation

Points d'entrée multiples MediaWiki Coût
App Wikipédia +++++ Oui ? Non Non Oui +++ Non +++ ++
Kiwix + ++ Non Non Non Oui Non +++ Non - +
App dédiée +++ ? Oui Non Non Oui Oui +++ Oui +++ +++
WebView + Faible Non Oui Oui Non Non +++ ? (si plusieurs app) ++ +
Apache Cordova ++ + Oui Oui Oui ? Oui +++ Oui ++ +
PWA + +++ (en fait N/A) Oui Oui Oui Possible avec IndexDB et Workbox.js Oui (android)

À venir (iOS)

Intégration possible sur Google Play

Possible d'avoir un script JS pour ajouter la PWA sur le bureau.

Oui et possibilité de faire facilement de multiples applications Oui +++ -

Critères

  • Complexité de développement: quelle quantité d'effort pour le développement et l'entretien sera nécessaire?
  • Chance d'être acceptée par l'App Store: les app store et particulièrement celui d'Apple ont des politiques de fonctionnalité minimales pour empêcher les Apps qui ne sont en fait que des sites web. L'article suivant explique le processus en détail.
  • Support caméra: est-ce que la caméra mobile pourra être intégrée à l'app?
  • Support JS: est-ce que la page visulisée peut exécuter du javascript? Essentiel pour les diagrammes et les calculateurs.
  • Support Éditeur Visuel: est-ce que l'éditeur visuel sera supporté?
  • Hors-ligne: sera-t-il possible de télécharger une version hors ligne de la plateforme?
  • Notifications: est-il possible de pousser des notifications dans le téléphone de l'utilisateur?
  • Facilité d'installation: est-ce que le téléchargement de l'app passe par des mécanismes connus des utilisateurs? Ou faut-il faire des manipulations spécifiques (comme ajouter un raccourci depuis Safari)
  • Points d'entrée multiples: il serait judicieux de fournir par exemple aux étudiants la possibilité d'avoir comme page d'accueil ULaval:Médecine.
  • Réutilisation pour une autre installation MediaWiki: de manière à partager l'application avec la communauté MediaWiki
  • Coût
Antoine Mercier-Linteau (discussioncontributions)

@Charles-Éric Noël Laflamme, discutons de nos différentes options ici.

J'ai créé un tableau comparatif dans le résumé de la discussion pour comparer nos choix.

Voici quelques notions:

  • Apache Cordova, un WebView sur les stéroïdes qui permet un accès aux fonctions natives du téléphone (caméra, stockage, etc.)
  • Facilité d'installation: la plupart des gens en médecine utilisent des produits Apple et si on leur dit qu'on a une app, ils vont aller sur l'App Store et chercher l'app.
  • PWA: une avenue intéressante, mais encore expérimentale sur la plupart des navigateurs
  • Chances d'être accepté par l'App Store: on a peut-être un atout dans notre jeu, le fait que notre application vise les professionnels de la santé et que devant l'urgence les utilisateurs doivent être en mesure d'accéder rapidement à l'information de la manière la plus ergonomique possible.

Bref, c'est compliqué. Je vais demander conseil à Dr Marc-Émile Plourde, qui a de l'expérience avec le développement d'applications et qui se trouve notamment derrière le Lanthier, MD on Call, etc. Des apps qui si l'on se fie aux conditions de l'App Store, ne devrait pas être éligibles (quoi que là depuis longtemps et bénéficiant probablement d'une clause grand-père).

Charles-Éric Noël Laflamme (discussioncontributions)

Je partage le même avis quant à l'accesibilité de l'application sur l'App Store et la facilité d'installation, la plupart des utilisateurs ne seront pas nécessairement des tech savy et il faut donc que le tout soit le plus simple possible. Pareillement, je crois que le fait d'accéder hors-ligne à la plateforme est une fonctionnalité très intéressante qui permettrait à l'application de se différencier d'un simple raccourci.

Pendant que j'y pense également, je sais qu'un Webview auquel des notifications Push ont été ajoutés n'est habituellement pas accepté par Apple sous prétexte que les technologies purement Web peuvent désormais offrir des notifications Push. Est-ce le cas pour la version mobile actuelle de Wikimedica?

Antoine Mercier-Linteau (discussioncontributions)

Tel que discuté en rencontre, le noeud du problème est que:

  • On ne veut pas investir de temps dans le développement d'un app qui sera finalement refusée par Apple.
  • On voudrait éviter de développer une app pour qu'elle ne dure qu'un temps et avoir à en développer une autre plus tard.

Nos chances de passer le contrôle d'Apple sera maximal si on arrive avec une app profesionnelle et de qualité. Voici donc ce qui a été décidé:

  1. Évaluer le potentiel de réutilisation de l'app de Wikipédia (Wikimedica:Tâches/Liste/245/1) selon les critères de la correspondance entre la version iOS et Android, le support JS, la flexibilité de la base de code
    1. L'avantage de l'app de Wikipédia, c'est qu'elle est maintenue par Wikimedia et si l'on fait construit une version qui s'adapte à n'importe quel MediaWiki (il y a un besoin), on pourra bénéficier de l'aide de la communauté
    2. Si jugé trop complexe ou trop peu flexible, nous développeront une solution maison
  2. Que je contacte Marc-Émile Plourde pour aller chercher de son expérience dans la publication d'apps avec Apple
  3. Que l'on prenne une décision sur la technologie à choisir selon les résultats de nos investigations
Antoine Mercier-Linteau (discussioncontributions)

En y repensant, j'ai réalisé que l'application Wikipedia ne supporte pas l'Éditeur Visuel. C'est un problème de taille et potentiellement un killer. Le critère a été rajouté dans le tableau.

Le choix d'une app WebView devient d'autant plus intéressant aussi que l'optimisation du site pour le responsive pourra aussi bien profiter à l'app qu'à la version mobile. De plus, tous les workflows développés pour l'app (comme le téléversement d'images de patients) pourront être réutilisés sur le site et vice versa.

Antoine Mercier-Linteau (discussioncontributions)

Je me suis replongé dans cette tâche et selon mes recherches, une app PWA serait potentiellement la meilleure option:

  • disponibilité complète de toutes les fonctions de Wikimedica présentes et futures
  • publication de notifications (à venir sur iOS[voir ici et ici])
  • possibilité d'intégrer l'app PWA sur Google Play et l'App Store (plus difficile)
  • ajout d'un script pour que l'application puisse être installée à l'aide d'un bouton depuis Chrome (iOS aussi?)

En somme, le support de PWA par Apple est très superficiel, car la compagnie semble réticente à adopter ce standard puisqu'il permet à des producteurs d'application de distribuer leur app par une autre interface que l'AppStore. C'est définitivement un problème pour nous, car notre clientèle est surtout sur Apple. Cependant, les choses vont probablement changer, car Apple se fait actuellement poursuivre par de gros joueurs de l'industrie pour ses pratiques monopolistiques.

Le gros avantage d'une app PWA aussi, c'est qu'on pourrait éviter entièrement toutes les assurances coûteuses et les contrôles qu'Apple impose aux éditeurs de ses apps.

Antoine Mercier-Linteau (discussioncontributions)

@Charles-Éric Noël Laflamme, j'ai refait l'analyse de nos besoins et des options et mis à jour je tableau de résumé de la discussion. Je crois qu'une app PWA serait notre meilleure option à court terme. J'aimerais savoir ce que tu en penses.

Antoine Mercier-Linteau (discussioncontributions)