Se connecter

Informatique

Création de sites web

Sujet : Formulaire hors ligne avec synchronisation en ligne
1
Arkwolf
Niveau 17
11 novembre 2019 à 17:47:09

:salut:

Je dois faire une app qui a une partie qui doit marcher hors ligne, et se resynchroniser quand il y a internet.

Cette partie hors ligne sera utilisée principalement en mobile (le desktop c'est optionnel), c'est en gros un formulaire avec quelques photos à prendre, et la personne peut remplir plusieurs fois le formulaire (si elle a plusieurs "albums" en gros). Vu qu'ils ont une connexion lente (voir pas de connexion du tout) et qu'on envoie des fichiers, faudrait du coup que ça se synchronise une fois qu'il y a internet.
Faut donc prévoir qu'on peut stocker pas mal de photos hors-ligne dans cette "appli". (peut-être genre 50 au max ?)

Si j'ai bien compris, j'ai deux solutions qui s'offrent à moi :

1) Faire une appli mobile native, et gérer ça là. Un peu dommage car l'appli native sera "séparée" de l'autre bout de l'appli, qui a besoin uniquement d'un fonctionnement en ligne (et desktop) et qui sera du coup juste en web "classique" je pense. Ça fait faire un truc séparé, c'est chiant autant à développer que pour l'utilisateur :(

2) Regarder du côté des services workers. Mais j'ai 0 expérience là dessus, et je trouve pas trop de doc par rapport à ce que je veux faire... Mais vous, vous avez peut-être déjà testé ça. C'est jouable vous pensez ? Genre je rend la page disponible hors ligne, et je stock les requêtes et ses fichiers, puis j'envoie quand y'a internet ? ça peut se faire ça ?

Je suis libre d'utiliser n'importe quelle techno, j'aimerais juste me prendre le moins la tête possible et que ça reste assez fiable :hap: mais dans tous les cas c'est hyper chiant à faire ce genre de trucs non ? :(

Vous me conseilleriez quoi ? sachant qu'on va partir du principe que je suis aussi nul en dev front web qu'en dev d'appli natives https://image.noelshack.com/fichiers/2018/10/1/1520256134-risitasue2.png

boucif
Niveau 24
11 novembre 2019 à 20:00:19

Il y a les PWA mais c’est du front en faite.
T’as mieux fait de développer ça en natif ou un framework mobile, au moins tu pourras détecter l’état du réseau après pour les infos tu les stock sur le tel et tu les envoies sur le net une fois tu récupères la connexion.

Arkwolf
Niveau 17
11 novembre 2019 à 21:05:43

Merci pour l'avis :oui:

On peut pas détecter l'état du réseau en PWA ?
J'ai vu ça https://developer.mozilla.org/en-US/docs/Web/API/NavigatorOnLine/Online_and_offline_events mais j'y connais rien et je trouve pas beaucoup de doc là dessus je trouve, ça a pas l'air ultra répandu j'ai l'impression :(
On dirait qu'on peut quand même des choses assez poussées avec les PWA mais ça a pas l'air trop répandu

Après j'imagine qu'après gérer si le navigateur est en veille etc ça doit être un bordel voir impossible, déjà qu'en natif c'est bien chiant :(

Je crois que je vais partir sur une "vrai" app du coup ouais, ça me paraît un peu moins risqué / experimental

fantomasticot
Niveau 3
11 novembre 2019 à 21:28:51

As tu regarder firebase? https://firebase.google.com/products/firestore/
Il y a une option de sync data offline/online

Apres pour des images je ne sais pas trop comment ça peut marcher

Arkwolf
Niveau 17
11 novembre 2019 à 21:45:54

Ah intéressant, je savais pas qu'on pouvais utiliser firebase pour le web, et apparemment ça gère bien également le sync offline/online, je croyais que c'était que pour mobile, cool!

Faudrait que je test, même si je préfère quand même avoir une base de données sur un serveur à moi. Mais bon ça gère tellement de trucs firebase, ça devient en plus en plus difficile de s'en passer pour ce genre de trucs j'ai l'impression

Merci :oui:

Je crois que je vais passer plus de temps à faire de la R&D sur ce projet que sur le projet en lui-même :hap:

Arkwolf
Niveau 17
11 novembre 2019 à 21:51:08

D'ailleurs dans le même genre y'a aussi couchdb et pouchdb j'avais vu. Ça a l'air super bien mais j'ai l'impression que vraiment peu de gens utilisent ces derniers :(
J'ai du mal à savoir ce qui pourrait vraiment être viable ou pas dans les techo web, c'est chiant :rire:

boucif
Niveau 24
11 novembre 2019 à 22:54:02

Je crois qu'azure mobile propose ça aussi au finale tu payes le service

deepblue
Niveau 13
13 novembre 2019 à 11:27:21

Il y a peut-être 4 ou 5 ans, j'ai travaillé sur un projet web qui impliquait de la saisie offline. J'avais choisi d'utiliser AppCache qui permet de stocker des fichiers dans le navigateur et de les afficher quand le site web ne répond pas. On avait donc développé un front full html/css/js et les données était stockées dans le localStorage. Le compte était ensuite synchronisé à la connexion sur le site online.

Arkwolf
Niveau 17
13 novembre 2019 à 19:35:58

Merci :oui:

Au final le projet a été annulé, j'ai dit que ça prendrait trop de temps par rapport à leur budget (plein de choses devaient se synchroniser dans les 2 sens etc, l'enfer)

Du coup ce sera pour une prochaine fois :hap: (en vrai ça m'arrange un peu ça avait l'air uuuultra chiant :peur: )

1
Sujet : Formulaire hors ligne avec synchronisation en ligne
   Retour haut de page
Consulter la version web de cette page