Ich verwende AWS Mobile Hub als Back-End für meine schnelle App. Die App verwendet Tabellenansichten, die Daten von DynamoDB laden, aber ich muss auch eine Offline-Kopie der Datenbank in der App haben, so dass es offline funktionieren kann, aber wenn es mit dem Internet verbindet, sollte es die neueste Kopie des Online bekommen Datenbank. Was ist die beste Lösung dafür?Speichern einer Offline-Kopie der Datenbank
Antwort
Es gibt mehrere Möglichkeiten.
Wenn Daten nicht so groß sind, speichern Sie einfach json string zu NSUserDefaults. Jedes Mal, wenn Sie neue Daten laden, aktualisieren Sie die Benutzereinstellungen so, dass Sie mit neuen Daten synchronisieren können.
Wenn Daten groß sind, verwenden Sie Coredata.
Danke, ich werde mich wahrscheinlich für Core Data entscheiden, obwohl es nicht das entwicklungsfreundlichste System ist; –
Sie müssen nur Ihre Datenbankdaten sichern oder exportieren. Da Sie Dynamodb verwenden, haben Sie möglicherweise größere Probleme. Angenommen, Sie verfügen bereits über ein Schema, mit dem Ihre App die lokalen Daten verwenden kann, können Sie dynamodump.py verwenden, um Dynamodb-Dateien zu sichern und wiederherzustellen.
Dies betrifft nicht das Problem, die Daten mit den Daten der mobilen App synchron zu halten. –
Warum verwenden Sie keine Kerndaten? – Asdrubal