Retour au blogArticle

Choix web, PWA ou mobile

Une PWA fonctionne-t-elle vraiment hors connexion ? Ce qu’il faut prévoir avant de le promettre

Ajouter un service worker ne suffit pas à rendre toute une application utilisable sans réseau. Le vrai sujet est de savoir quelles actions doivent rester possibles, avec quelles données, et comment synchroniser proprement ensuite.

Application PWA avec consultation hors connexion, saisie différée et synchronisation au retour du réseau

Prévisualisation locale

Cet article reste en brouillon. Il n’est pas ajouté aux surfaces publiques, au sitemap ou à la file de publication automatique.

Une PWA peut fonctionner partiellement hors connexion, mais pas par magie. Elle peut afficher une page déjà chargée, garder certaines ressources en cache, permettre une consultation locale ou enregistrer une saisie à envoyer plus tard. Chaque niveau doit être cadré avant de le promettre à un client, une équipe terrain ou un commerce.

Le piège consiste à confondre cache et véritable mode hors ligne. Le cache peut rendre une interface plus rapide et parfois consultable sans réseau. Un vrai mode hors ligne doit aussi gérer les données, les erreurs, l’authentification, les conflits et la reprise quand la connexion revient.

Réponse courte

Oui, une PWA peut fonctionner hors connexion, mais seulement pour les usages prévus et testés. Une première visite sans réseau, un paiement, une authentification expirée ou une donnée jamais synchronisée ne se règlent pas avec un simple bouton “installer”.

Cache

Utile pour accélérer l’interface et revoir certains écrans, mais insuffisant pour promettre une application métier disponible partout.

Données locales

Nécessaires pour consulter ou préparer une action sans réseau, avec une attention forte aux données sensibles et aux limites de stockage.

Synchronisation

Le vrai point critique : envoyer, rejouer, corriger ou refuser une action quand le réseau revient.

Cadrer un usage hors connexion

Ce qu’une PWA peut faire hors connexion

Le hors-ligne d’une PWA peut être très utile quand il est limité à des usages concrets : consulter une fiche, continuer une saisie, préparer une intervention ou garder une interface accessible dans une zone mal couverte.

Afficher une page déjà chargée

Une page ou une interface déjà visitée peut rester disponible si les fichiers nécessaires ont été mis en cache.

Consulter des données locales

Une liste de clients, de missions ou de commandes peut être consultée si elle a été synchronisée avant la coupure.

Préparer une action

Une note, une photo, une validation ou un formulaire peuvent être gardés en attente si l’application prévoit une file de synchronisation.

Ce qu’elle ne garantit pas automatiquement

Certaines promesses sont dangereuses si elles ne sont pas clairement limitées. Une PWA ne peut pas inventer des données jamais chargées, valider une opération qui dépend d’un serveur ou sécuriser un paiement sans réseau.

Première visite sans connexion

Si l’application n’a jamais été ouverte, le navigateur ne dispose pas encore des ressources nécessaires.

Actions serveur

Paiement, envoi officiel, vérification de stock temps réel ou droits utilisateurs exigent souvent un retour réseau fiable.

Conflits de données

Deux personnes peuvent modifier la même information. Il faut décider qui gagne, quoi fusionner et quoi demander à l’utilisateur.

Les niveaux de hors-ligne à cadrer

Avant de choisir entre application web, PWA ou mobile, le bon réflexe consiste à nommer précisément le niveau attendu.

1. Affichage

La page déjà ouverte reste visible, avec un message clair si l’action échoue.

2. Ressources

HTML, CSS, JavaScript, icônes ou images utiles sont disponibles en cache.

3. Consultation

Des données déjà synchronisées restent lisibles sans appeler le serveur.

4. Saisie différée

Une action est enregistrée localement avec un statut d’attente explicite.

5. Synchronisation

Les actions en attente sont envoyées quand la connexion revient.

6. Conflits

Les doublons, refus, écarts de version et erreurs sont visibles et traitables.

Exemple terrain : commercial ou technicien

Un commercial ou un technicien peut avoir besoin de consulter des fiches, ajouter une note, joindre une photo et préparer un compte rendu dans un bâtiment mal couvert. Dans ce cas, le mode hors ligne doit être pensé comme un parcours complet.

Avant le déplacement

Les missions utiles sont synchronisées avant de partir sur le terrain.

Pendant la coupure

La saisie reste possible, mais l’utilisateur voit clairement ce qui est en attente.

Au retour réseau

La synchronisation confirme, signale ou demande une correction si nécessaire.

Exemple commerce : commande et retrait

Pour un commerce local, le hors-ligne peut aider l’équipe à consulter des commandes déjà chargées, préparer des retraits ou retrouver des informations client si le réseau ralentit. En revanche, promettre un paiement ou une réservation de stock hors ligne demande beaucoup plus de prudence.

Point à cadrer

Le bon objectif peut être “continuer à préparer une commande déjà synchronisée”, pas “tout vendre sans réseau”. Cette nuance change complètement le budget, les tests et les risques.

Risques techniques à ne pas sous-estimer

Ancien contenu en cache

Une mise à jour peut cohabiter avec une ancienne version. Il faut prévoir l’information utilisateur et la stratégie de rafraîchissement.

Données sensibles

Stocker localement des données client, santé, dossier ou paiement demande une vraie réflexion de sécurité et de durée de conservation.

Authentification expirée

Une action saisie hors ligne peut être refusée si la session n’est plus valide au moment de l’envoi.

Questions à poser avant le développement

  • Quelles pages doivent rester lisibles sans réseau ?
  • Quelles données doivent être disponibles localement, et pendant combien de temps ?
  • Quels formulaires peuvent être saisis en différé ?
  • Quelles opérations exigent obligatoirement le serveur ?
  • Que fait-on si deux personnes modifient la même donnée ?
  • Comment l’utilisateur sait-il ce qui est envoyé, en attente ou refusé ?
  • Quels tests sont prévus sur iOS, Android, navigateur et PWA installée ?

PWA ou Capacitor selon les usages

Une simple PWA peut suffire pour une application consultable, installable, rapide et utilisable sur navigateur. Capacitor devient plus pertinent lorsque le projet demande une intégration mobile plus poussée, des tests appareils plus stricts ou une distribution plus proche des stores.

PWA simple

Adaptée si le besoin principal est un accès rapide, une installation légère et un hors-ligne limité.

Capacitor

Pertinent si le projet doit se rapprocher d’une application mobile, avec une intégration appareil plus maîtrisée.

Application mobile

À envisager quand les contraintes de distribution, d’usage intensif ou de fonctionnalités natives le justifient vraiment.

Recommandation Opale Application

La bonne question n’est pas “la PWA fonctionne-t-elle hors connexion ?” mais “quelles actions doivent rester fiables quand le réseau tombe ?”. C’est ce cadrage qui permet de choisir entre application web, PWA ou mobile, et de décider si Capacitor apporte une vraie valeur.

Pour une TPE, une association, une équipe terrain ou un commerce, le meilleur point de départ reste souvent une première brique limitée : un écran consultable hors ligne, une saisie différée ou une synchronisation simple, testée sur iOS et Android avant de promettre plus.

Vérifier le bon niveau de hors-ligne

Questions fréquentes

Une PWA fonctionne-t-elle sans internet ?

Oui, mais uniquement pour les contenus, écrans et données prévus. Le hors-ligne doit être conçu, testé et expliqué.

Le service worker suffit-il ?

Non. Il aide à gérer le cache, mais il ne règle pas seul les données locales, la synchronisation ou les conflits.

Peut-on saisir hors connexion ?

Oui si la saisie est stockée localement, marquée en attente et synchronisée ensuite avec une gestion des erreurs.

Que faire en cas de conflit ?

Il faut définir une règle claire : refuser, fusionner, demander une validation ou conserver une trace des deux versions.

Quand choisir Capacitor ?

Quand l’usage mobile, les tests appareils, les capacités natives ou la distribution justifient d’aller au-delà d’une PWA simple.

Conclusion

Une PWA peut être un excellent format pour une application utile, rapide et installable. Mais le hors-ligne ne doit pas être promis trop vite. Il faut définir le niveau attendu, les données concernées, les limites acceptables, les erreurs possibles et la manière de synchroniser au retour du réseau.