Power Lab Podcast

Travailler efficacement hors ligne dans les Microsoft Canvas Apps

2 août 2022

Microsoft

Dans de nombreuses situations de travail, les applications mobiles sont indispensables et il faut parfois les utiliser hors ligne. Vous voulez donc permettre à l’utilisateur de continuer à exploiter un minimum de fonctionnalités de l’application canevas, même en cas d’interruption de la connexion internet de son smartphone ou de sa tablette. Découvrez comment gérer les scénarios hors ligne classiques avec Power Apps et ce que vous devez et ne devez pas faire pour que votre application continue à fonctionner.

Découvrez-en bien davantage dans notre podcast !

Vous préféreriez écouter une discussion amusante plutôt que lire cet article de blog ? Dans ce cas, nous avons une bonne nouvelle pour vous ! Cet article de blog est un résumé du dixième épisode de notre série de podcasts, Power Lab Podcast. Deux de nos experts les plus sympathiques explorent chaque mois les potentialités de la plateforme et aboutissent ainsi à de nouvelles perspectives.

L’expérience de Lennert : l’accessoire indispensable pour une partie de pétanque

Pour savoir qui a remporté une partie de pétanque, il faut mesurer la distance entre chaque boule lancée et le but (nom officiel de la plus petite boule) à l’aide d’une cordelette ou opter pour la dernière création de Lennert. Celui-ci a conçu une Power App capable de mesurer la distance entre deux objets grâce à une composante appelée « Mixed Reality Measuring ». Ouvrez l’application et appuyez sur « Mesurer » : l’appareil photo apparaît. Tenez votre téléphone au-dessus du terrain et l’application vous permettra de mesurer les distances entre les boules sans cordelette. Vous pouvez également ajouter des photos du visage radieux du vainqueur et de celui du perdant déçu. Plaisir garanti !

Quatre étapes indispensables lors de la mise au point d’une application mobile dotée d’une fonction hors ligne

  1. Intégrez-y un dispositif de vérification pour que l’application puisse rechercher une connexion internet.
  • Lorsque l’application est en ligne : il faut qu'elle puisse récupérer les données les plus récentes pour les synchroniser avec SaveData(). Pour optimiser les performances de votre application, intégrez-y une vérification supplémentaire pour que la synchronisation ait uniquement lieu en cas de modifications par rapport à la dernière synchronisation.
  • Lorsque l’application est hors ligne : faites en sorte qu'elle affiche les données locales grâce à la fonction LoadData().
  1. Une nouvelle synchronisation doit avoir lieu lorsque l’application se reconnecte après une session hors ligne. Vous pouvez permettre à l’utilisateur d’indiquer s’il souhaite le faire, vous pouvez opter pour la synchronisation automatique ou encore faire apparaître un pop-up demandant à l’utilisateur s’il veut procéder au chargement des données. Ce choix devra se faire en fonction du contexte d’utilisation de l’application.
     
  2. La mise à jour se fait grâce à la fonction Patch(), qui renvoie les éléments nouveaux ou modifiés vers la source de données. Pour bon nombre d’éléments, cela prend du temps et l’utilisateur devra garder l’application ouverte. Si cela dure trop longtemps, n'hésitez pas à envoyer les éléments au format JSON à Power Automate, car cela prend généralement moins de temps.
     
  3. Lorsque la source de données est réactualisée, faites refaire une copie locale à l’application grâce à la fonction SaveData(), pour que l’utilisateur puisse travailler avec les données les plus récentes lors de la prochaine session hors ligne.

Astuces supplémentaires de nos experts pour une utilisation hors ligne fluide

  • Ne perdez pas l’UX de vue. Une icône clairement visible permettra à l’utilisateur de savoir quand l’application est en ou hors ligne et quelles fonctions sont disponibles. Vous pouvez aussi griser certains boutons lorsqu’ils sont indisponibles. Ceux-ci peuvent être désactivés à l’aide de la fonction « connection.connected ». Lorsque l’application est hors ligne, vous pouvez également indiquer le moment de la dernière synchronisation des données.
  • Tenez compte de la capacité de stockage disponible de l’appareil, car celle-ci est limitée. En général, la mémoire disponible des Power Apps est de 30 à 70 MB.
  • Les fichiers ajoutés hors ligne ne sont pas immédiatement disponibles pour être enregistrés en ligne. Il vaut dès lors mieux conseiller aux utilisateurs de prendre des photos avec leur appareil photo et de ne les charger que lorsqu’ils seront à nouveau connectés. Ne permettez pas l’ajout direct de photos dans l’application.
  • La composante timer permet de procéder à des synchronisations de manière périodique, par exemple, toutes les cinq minutes. De cette façon, vous pouvez exécuter automatiquement plusieurs fonctions pour exporter ou enregistrer des données.
  • Ne synchronisez que les données absolument indispensables à l’utilisateur. Cela garantira des délais de chargement plus courts, de meilleures performances et une réduction de la consommation internet mobile.
  • N’oubliez pas que de nombreuses fonctionnalités de Power Apps fonctionnent par défaut lorsque l’appareil est hors ligne. L’application de Lennert pour la pétanque continuera par exemple à fonctionner. Le statut en/hors ligne n’est important que pour enregistrer les résultats en ligne.
  • Pour éviter que deux versions apparaissent parce qu’une personne travaille en ligne et l’autre hors ligne, vous pouvez aussi y intégrer une fonction « lock » (verrouillage) pour ne permettre qu’à une seule personne de l’utiliser. Vous pouvez aussi faire vérifier par l’application si quelqu’un d’autre a procédé à des modifications grâce au code temporel qui indique la dernière modification de l’élément.

Chaque mois, trouvez l’inspiration pour tirer le maximum de Microsoft Power Platform

Abonnez-vous via votre plateforme de podcasts préférée pour écouter et ne rater aucune émission !