Je fais une application (dans Swift) qui doit fonctionner en mode hors connexion et en ligne. En mode hors ligne, les données seront stockées localement sur CoreData. Une fois qu’il détecte le réseau (en ligne), il doit se synchroniser avec le serveur et mettre à jour la firebase database principale. Comment devrait-on s’y prendre? Existe-t-il des bibliothèques ou des pods?
J’ai vu ce post mais rien n’est exploitable. C’est trop haut et je ne sais pas trop par où commencer. J’ai vu ce lien de Ray Wenderlich mais je ne sais pas comment traduire en Swift.
Tous les liens de tutoriel seront également utiles
Ajoutez un nouvel atsortingbute
BOOL
à votre CoreData Entity
et nommez-le comme synched
. Cela stockera essentiellement le statut synchronisé pour chaque object.
Maintenant, vous devrez vérifier la connectivité Internet. Reportez-vous à ce lien
Lorsque vous disposez d’une connectivité Internet, récupérez simplement les objects à partir de CoreData
utilisant le NSPredicate
suivant dans votre requête d’extraction:
let isSynchedPredicate = NSPredicate(format: "synched = %@", false)
Vous pouvez maintenant utiliser votre service Web pour synchroniser et mettre à jour tous les objects récupérés sur le serveur. En cas de téléchargement réussi, synched
oublier de changer la propriété synched
sur true