Terrain

Travailler hors réseau

Android (fond téléchargeable) · iPhone (relevé local) · Web (réseau obligatoire)

Il y a un moment, dans presque toutes les journées de terrain, où la barre de réseau se vide. On descend dans un vallon, on entre sous un peuplement dense, on passe la limite d’un département où l’opérateur n’a jamais tiré de fibre. Le téléphone continue de vibrer dans la poche, mais il ne parle plus à personne. Et c’est précisément là qu’on a besoin de lui : c’est là qu’est la coupe à marquer, la limite à vérifier, le fossé qui ne figure sur aucun plan.

La question n’est donc pas « est-ce que Sylvie marche hors réseau », posée comme on demanderait un label. La question est : qu’est-ce qui continue exactement, et qu’est-ce qui s’arrête. Parce que la réponse n’est pas la même selon ce que vous avez dans la main. Le fond de carte et vos tracés ne suivent pas les mêmes règles ; l’iPhone et Android ne se préparent pas de la même façon ; et la webapp, elle, ne fait pas semblant.

Autant le dire tout de suite, en une ligne, pour que personne ne parte avec la mauvaise idée : vos relevés vivent dans le téléphone, le fond de carte vient du réseau, et la webapp a besoin du réseau pour tout.

Ce qu’on va voir

Trois gestes, qui n’ont ni le même moment ni le même écran, et qu’on confond souvent sous le mot « hors ligne » :

  • Préparer avant de partir — la carte descendue sur le téléphone, le compte, et le fond. C’est le seul geste qui se fait avant, avec du réseau, et le seul qu’on regrette de n’avoir pas fait.
  • Relever sans réseau — ce qui fonctionne réellement une fois la barre à zéro : GPS, tracés, parcours, photos, dictée. Beaucoup, en fait.
  • Ce que le réseau emporte avec lui — la liste honnête de ce qui s’éteint, pour ne pas croire à une panne.
  • Faire remonter au retour — la synchronisation ne se déclenche pas d’elle-même quand le réseau revient. Voilà ce qui la réveille.
  • Si quelqu’un a édité pendant ce temps — la règle qui tranche, et le seul cas où l’on peut vraiment perdre quelque chose.

Préparer avant de partir

C’est le paragraphe le plus utile du guide, et c’est celui qu’on lit trop tard : trois choses se règlent avant de perdre le réseau, et aucune ne se rattrape sur place.

1. La carte doit être descendue sur le téléphone. Une carte créée sur la webapp, ou par un collègue qui vous l’a partagée, n’existe sur votre appareil qu’après une synchronisation. Le geste tient en dix secondes, et il est plus léger qu’on ne le croit : chez vous ou sur le parking, encore couvert, ouvrez l’application et laissez la liste des cartes se charger. C’est tout. La synchronisation qui part à ce moment-là ne descend pas seulement des noms de cartes : elle écrit dans la base locale du téléphone toutes vos cartes et toutes celles qu’on vous a partagées, avec leurs tracés et chacun de leurs sommets. Ouvrir ensuite les cartes une par une n’ajoute rien à la provision — cette ouverture-là ne sert qu’à rattraper une carte modifiée ailleurs depuis. Ce qu’il faut vérifier avant de partir, ce n’est donc pas d’avoir visité chaque carte, c’est que la synchronisation a bien eu lieu : une liste chargée, sans pastille d’attente, veut dire que tout est là.

2. Il faut avoir été connecté une fois — et là, les deux téléphones diffèrent pour de bon. Sur Android, l’écran de connexion propose franchement Continuer sans compte : vous pouvez installer, sauter la connexion et dessiner dans la foulée. Sur l’iPhone, il n’existe aucun équivalent, et ce n’est pas un détail d’ergonomie : le carrousel se termine par le choix du pays, puis par un écran Créer un compte dont on ne sort qu’en recevant le SMSRecevoir un code par SMS. Tant que le code n’a pas été validé, l’onboarding reste à l’écran et l’application ne s’ouvre pas. Autrement dit, un iPhone tout juste installé ne dessine rien sans réseau : installez et connectez-vous chez vous, pas au pied de la parcelle.

Un mot sur le travail sans compte, parce qu’il n’a pas le même statut des deux côtés. Sur Android, c’est un point de départ possible, dès la première ouverture. Sur l’iPhone, c’est un état d’après : celui d’un appareil qui a été connecté, puis déconnecté — ou dont la session a expiré en silence. Dans les deux cas, ce qu’on y fait est réel, c’est sauvegardé, et ce n’est simplement jamais envoyé nulle part tant que vous ne vous connectez pas. Les deux applications le disent de la même façon, avec un bandeau ambre en haut de la liste des cartes dès qu’une carte locale attend : 1 carte n’est pas sauvegardée — ou X cartes ne sont pas sauvegardées — et, en dessous, Connectez-vous pour lancer la synchronisation., avec un bouton Se connecter. Tant que ce bandeau est là, votre journée n’existe qu’à un seul endroit au monde : ce téléphone.

3. Le fond de carte. C’est le vrai sujet, et c’est là que les plateformes se séparent pour de bon. Vos tracés sont des données, elles tiennent dans le téléphone. Le fond IGN, lui, est une image découpée en milliers de tuiles qui vivent sur les serveurs de la Géoplateforme, et qu’il faut donc être allé chercher.

Relever sans réseau

Voilà la bonne nouvelle, et elle est plus large qu’on ne l’imagine : sur les deux téléphones, le relevé ne dépend pas du réseau. Les cartes, les tracés, les sommets et les champs de chaque fiche sont écrits dans une base de données locale, sur l’appareil, et l’écran d’édition lit cette base — pas le serveur. Le réseau n’intervient qu’après, pour recopier tout cela ailleurs.

Concrètement, la barre à zéro, vous gardez :

  • le GPS, qui n’a jamais eu besoin d’un opérateur pour fonctionner — c’est un signal satellite, et il est identique sous couvert ou en plein champ ;
  • le dessin : points, chemins, surfaces, sommet par sommet, avec les mêmes gestes qu’en ville ;
  • le parcours GPS, où vous marchez et Sylvie enregistre. L’iPhone vous prévient d’ailleurs avant de commencer : L’application va enregistrer en continu votre position et la sauvegarder dans cette carte. Et il confirme à la fin par un Trace sauvegardée ;
  • les fiches : nom, essence, diamètre, commentaire, couleur, catégorie — tout ce que décrit Relever une parcelle ;
  • la dictée vocale, dont le moteur d’analyse tourne entièrement sur l’appareil ;
  • le fond de carte, dans la mesure de ce que vous avez préparé plus haut. C’est la seule pièce vraiment conditionnelle du lot.

Une précision qui rassure : rien de tout cela n’attend une confirmation du serveur. Un tracé enregistré hors réseau est enregistré, point. Vous pouvez fermer l’application, éteindre le téléphone, le laisser tomber en panne de batterie : au rallumage, le tracé est là, marqué comme restant à synchroniser.

Ce que le réseau emporte avec lui

Le reste s’éteint, et il est plus honnête de le lister que de vous laisser le découvrir en pleine coupe. Rien de ceci n’est une panne :

  • Tout ce qui touche au partage. Inviter quelqu’un, ouvrir ou couper un lien public, transmettre une copie, rejoindre une carte par code ou par QR : ce sont des écritures sur le serveur, elles ont besoin du serveur. Le sujet complet est dans Partager une carte.
  • Les discussions sur les tracés. Sur l’iPhone, elles se chargent depuis le serveur à chaque ouverture : hors réseau, le fil ne s’ouvre pas. Sur Android, un fil déjà consulté reste affichable depuis la copie locale, mais aucun nouveau message ne part ni n’arrive.
  • La suggestion d’essence après une photo. L’identification passe par un service distant. Hors réseau, la photo est bien prise et bien rattachée au point — c’est seulement la proposition d’essence qui ne vient pas, en silence.
  • Les calques vectoriels forestiers de l’IGN — dessertes, équipements, contraintes, BD Forêt en détail. Ils sont demandés au serveur pour l’emprise que vous regardez, à chaque déplacement, et ils ne se pré-téléchargent pas. Attention à la façon dont ils échouent, parce qu’elle n’est pas celle qu’on attend : hors réseau, la requête tombe en silence et l’application ne touche pas à ce qui est déjà dessiné. Le résultat du dernier chargement réussi reste donc affiché, y compris quand vous vous êtes déplacé depuis — une desserte à l’écran peut être celle d’une emprise laissée deux kilomètres en arrière. La couche n’est vraiment vide que si elle n’a jamais réussi à se charger : au premier affichage, après l’avoir décochée puis recochée, ou sous le zoom 12, en dessous duquel elle ne s’affiche pas. Une couche absente se remarque ; une couche qui traîne, non. Sur ces calques-là, hors réseau, ne vous fiez pas à ce qui est dessiné.
  • L’imagerie datée (les vues satellite jour par jour), pour la même raison, avec en plus le fait que chaque date est un jeu d’images différent.
  • Les couches feux, sauf si elles ont déjà été synchronisées : elles reposent sur un instantané local, téléchargé autour de vos cartes, et les applications sont franches sur son âge. Vous lirez selon le cas Zone non synchronisée — aucune donnée feu n’a encore été téléchargée. ou Données du …, hors ligne., la date étant celle du dernier téléchargement — un bandeau qui dit exactement ce qu’il sait, ce qui est la moindre des politesses pour une donnée de risque.
  • Et, sur la webapp, la totalité du reste. Voir l’encart plus haut.

Un cas particulier vaut d’être nommé, parce qu’il ressemble à un bug : un échec de synchronisation ne s’affiche pas de lui-même sur l’écran d’accueil. Si vous appuyez sur la flèche de synchronisation hors couverture, il ne se passera visiblement rien de grave — pas de message rouge, pas d’alerte. Ce sont les pastilles de la liste des cartes qui vous renseignent, et c’est le sujet de la section suivante.

Faire remonter au retour

Voici le point que ce guide doit dire le plus clairement, parce qu’il est contre-intuitif et qu’il explique presque toutes les inquiétudes de fin de journée : le retour du réseau ne déclenche rien tout seul. Les applications ne surveillent pas la connexion pour se réveiller quand la 4G revient. Elles synchronisent quand quelque chose le leur demande.

Ce quelque chose, ce sont ces occasions — et il suffit d’une :

  • Rouvrir l’application après l’avoir quittée. C’est le déclencheur le plus fiable, et le plus simple à retenir : de retour à la voiture, fermez et rouvrez Sylvie. Sur Android, c’est l’arrivée sur la liste des cartes qui lance la synchronisation ; sur l’iPhone, l’ouverture de l’écran d’accueil.
  • Toucher le bouton de synchronisation. Sur l’iPhone, la flèche circulaire en haut de l’écran d’accueil — celle qui n’apparaît que si vous êtes connecté ; l’onglet Partagées de la liste a en plus, dans son menu Options, une entrée Rafraîchir. Sur Android, le bouton de rafraîchissement de l’en-tête de la liste, dont le libellé d’accessibilité est Synchroniser.
  • Modifier un tracé. Chaque édition programme une synchronisation quelques secondes plus tard — deux secondes sur Android, cinq sur l’iPhone. Une correction faite au retour suffit donc à tout emmener.
  • Fermer la carte, sur l’iPhone, où la sortie de l’éditeur pousse immédiatement ce qui restait en attente au lieu d’attendre le délai.
  • Forcer la resynchronisation d’une carte depuis l’éditeur, quand on veut être sûr. Le bouton demande confirmation — Forcer la synchronisation ?, Les modifications du serveur seront récupérées, et vos modifications locales en attente seront envoyées., bouton Synchroniser — et répond par un Carte resynchronisée. Sur l’iPhone, souvenez-vous qu’il est grisé sans réseau.

Comment savoir ce qui reste en attente. Les deux applications marquent les cartes non synchronisées d’une pastille sur leur vignette dans la liste. Android affiche une icône dont le libellé est À synchroniser. L’iPhone est plus bavard : il a quatre états, et ils ne disent pas du tout la même chose.

  • Un nuage à flèche montante — vous êtes connecté et des modifications attendent d’être envoyées. C’est la pastille normale du retour de terrain, celle qui doit disparaître d’elle-même.
  • Un nuage barré — les mêmes modifications en attente, mais alors que vous n’êtes pas connecté. Rien ne partira tant que la session n’est pas rouverte.
  • Une silhouette de téléphone — une carte qui n’a jamais quitté l’appareil, alors que vous n’êtes pas connecté non plus. C’est la pastille du travail sans compte, et elle n’apparaît jamais en dehors de ce cas.
  • Un nuage marqué d’un point d’exclamation — celui-là surprend, parce qu’il s’affiche alors que vous êtes connecté et que plus rien n’est marqué en attente : cette carte n’a pourtant jamais bouclé une synchronisation complète, autrement dit rien ne prouve qu’elle existe côté serveur. C’est le seul des quatre qui mérite qu’on force une resynchronisation plutôt que d’attendre.

Une carte à jour, elle, ne porte rien : le silence est le signe que tout est passé. Android donne en plus un compte précis dans la liste des tracés d’une carte, sous la forme 3 à sync. Et si vous travaillez sans compte, le bandeau ambre déjà cité reste en haut de la liste jusqu’à la connexion.

Les photos font le voyage aussi, et c’est là qu’il faut être patient : chaque photo est envoyée avant le tracé auquel elle appartient. Une vingtaine de photos sur un réseau de bord de route, cela prend le temps que cela prend, et le tracé reste marqué en attente jusqu’à ce que son image soit passée. Laissez l’application ouverte quelques minutes, plutôt que de conclure à un blocage.

Si vous tuez l’application avant la synchronisation, vous ne perdez rien. Ce n’est pas une file d’attente en mémoire : chaque carte et chaque tracé porte, dans la base locale, une marque « reste à envoyer » qui survit à la fermeture, au redémarrage et à la panne de batterie. La reprise se fera à la prochaine occasion de la liste ci-dessus.

Un mot enfin sur la fréquence, qui évite de s’acharner : les synchronisations automatiques s’espacent d’au moins cinquante secondes. Appuyer cinq fois de suite sur le bouton ne va pas cinq fois plus vite.

Si quelqu’un a édité pendant ce temps

C’est la question qui vient toujours en dernier et qui inquiète le plus : vous étiez hors réseau toute la journée, et pendant ce temps un collègue a travaillé sur la même carte depuis la webapp. Qui gagne ?

La règle est simple, et il vaut mieux la connaître que l’imaginer : c’est la dernière modification enregistrée qui fait foi, tracé par tracé, sur la base de l’heure de mise à jour. Il n’y a pas de fusion intelligente, pas d’écran de conflit, pas de « garder les deux versions ». Ce qui protège votre journée, en pratique, c’est un garde-fou discret : une synchronisation qui descend du serveur n’écrase jamais un tracé que vous avez modifié et qui n’est pas encore parti. Vos éditions en attente sont donc à l’abri jusqu’à leur envoi — après quoi, ce sont elles qui deviennent la dernière version.

Une exception, et une idée reçue à défaire :

  • Une carte qu’on vous a partagée en lecture seule ne se discute pas : la version du serveur gagne toujours, comme il se doit. C’est d’ailleurs le seul endroit où une suppression venue d’ailleurs s’applique sans condition à un tracé que vous veniez de modifier — vos éditions en attente y sont effacées, puisque le serveur les refuserait de toute façon.
  • Une suppression ne gagne pas sur une modification qui n’est pas encore partie. On imagine volontiers la suppression plus forte que le reste ; ici, elle ne l’est pas. Si le tracé que vous avez enrichi hors réseau a été supprimé ailleurs pendant ce temps, l’application refuse la suppression au moment de la redescendre, garde votre version, et la renvoie au serveur à la synchronisation suivante. Le tracé réapparaît alors chez tout le monde, avec vos ajouts : la suppression n’est pas honorée, elle est défaite. C’est le même garde-fou que plus haut, poussé jusqu’à son terme — mais mieux vaut le savoir, parce que le collègue qui avait supprimé, lui, verra revenir ce qu’il croyait rangé, sans que rien ne l’en prévienne. En revanche, si vous n’aviez pas touché à ce tracé, la suppression descend normalement et il disparaît de votre carte. Le détail des rôles et de qui peut supprimer quoi est dans Travailler à plusieurs.

Et le seul cas où l’on peut réellement perdre une saisie, parce qu’il faut le dire : si l’envoi d’un même tracé échoue cinq fois de suite — un serveur qui refuse, une donnée que Sylvie n’arrive pas à écrire —, l’application arrête d’insister et laisse la version du serveur reprendre sa place au prochain passage. Cela ne concerne que les tracés d’une carte qui existe déjà sur le serveur, jamais un relevé entièrement neuf : celui-là, Sylvie continue de réessayer indéfiniment plutôt que de le perdre. Sur l’iPhone, ce cas est même visible tracé par tracé : la fiche gagne un dépliant Diagnostic synchro qui affiche la date du dernier essai, l’erreur, et l’une de ces deux phrases — Cette modification n’a pas encore été synchronisée. Elle sera retentée automatiquement. si l’espoir est permis, Tentatives abandonnées. La version du serveur sera adoptée à la prochaine synchronisation. si l’application a renoncé. C’est rare, et c’est le seul endroit où l’on peut voir venir une perte.

La conclusion tient en une habitude, et elle vaut mieux que toutes les explications de ce paragraphe : quand une carte part sur le terrain, qu’elle ne soit pas éditée ailleurs le même jour. Prévenez, ou attendez le soir. Ce n’est pas une faiblesse de Sylvie, c’est la nature de deux copies d’un même document qui ne peuvent pas se parler.


Reste à faire le tri de ce qui compte vraiment, une fois rentré : renommer, colorier, compléter ce que le doigt a posé approximativement sous la pluie — c’est Éditer une carte existante — et, si le fond gris de la matinée vous a manqué, préparer plus large la prochaine fois, en relisant Changer un fond de carte. Le meilleur réflexe hors réseau, au fond, n’est pas dans l’application : c’est le quart d’heure passé la veille, encore couvert, à ouvrir la carte et à emporter la zone.

Cartographiez. Partagez. Gérez.

Sylvie Forêt est gratuite pendant la bêta. Disponible sur iPhone, Android et sur ordinateur. Commencez en 30 secondes.

iOS 17+ · Android 8.0+ · Édité en France · Cartes IGN sous licence Géoportail