Ich bin neu bei Android und habe eine Anwendung erstellt, die Daten auf den Server holt und posten kann und im Online-Modus funktioniert. Aber ich möchte, dass es auch im Offline-Modus funktioniert, wenn es keine Internetverbindung oder Netzwerkfehler gibt. Es sollte auch Änderungen (Updates) an der Server-Datenbank vornehmen, wenn das Netz verfügbar ist. Ich habe viel R & amp; D aber nicht die nützlichen Informationen bekommen.
Bitte führen Sie mich mit einigen nützlichen Schritten, Beispielcode (falls möglich) oder einem Link, um die App im Offline-Modus zu machen.
Was Sie fragen, ist eigentlich unglaublich kompliziert.
Ich habe ein gutes Jahr meiner Zeit damit verbracht, dieses Problem zu lösen, und habe meine Arbeit im SyncIt-Projekt veröffentlicht, das sich in Ссылка befindet .
Es gibt:
Ich schlage vor, dass Sie über die lokale Versionskontrollkomponente lesen und dann in die Verbindungsüberwachungskomponente wechseln.
Sie können die SQLite-Datenbank in Ihrer Android-Anwendung verwenden. Im Offline-Modus können Sie alles in Ihrer lokalen Datenbank speichern, und wenn Ihre Anwendung online ist, können Sie Ihre lokale Datenbank mit der Server-Datenbank synchronisieren.
Zum Erstellen von SQLite lokalen Datenbank in Android-Anwendung können Sie die folgenden Beispielcodes (Beispielprojekte) in github
überprüfenProst ...
Hier können Sie keine Daten ohne Internet abrufen. Aber es ist möglich, alte Daten zu verwenden. Sobald Sie Daten aus dem Internet herunterladen, speichern Sie sie in der Datenbank.
Hier empfehlen die meisten Leute SQLite database
. Mein Vorschlag benutzt eine beliebige Datenbank ( SQLite or SQLCipher
). Danach, bevor Sie Ihre Daten hochladen, fügen Sie sie einfach in die Datenbank ein und posten sie aus der Datenbank. Denn sobald Netzwerkfehlerdaten nicht verloren gehen.
Broadcast Receiver
:
Dieser Broadcast-Empfänger wird verwendet, um Sie über die Netzwerkänderungen zu informieren. Sobald das Netzwerk verbunden ist, schreiben Sie Ihre Postleitzahl. Vielleicht ist hier auch der Netzwerkausfall möglich. Aber Daten noch in der Datenbank, so wird es keinen Verlust.
Tags und Links android offline-mode offlineapps