Datenbank mit Android abgleichen

Gast #5215835
Lesenswert?

Hallo zusammen.

Ich habe eine App geschrieben, welche auf dem Smartphone (Android) lokal 
(!) Daten in eine SQLite-DB schreibt und liest.
Dies funktioniert auch gut, allerdings ist es etwas unkomfortabel, da 
man auf mit der App nur lokal auf dem Smartphone arbeiten kann.

Deshalb möchte ich meine App erweitern, sodass sich die Datenbank im 
Netz befindet und das Smartphone die Daten in diese DB schreibt bzw. die 
Daten daraus holt. Nun besteht aber das Problem, dass das Smartphone im 
Moment des Schreibens von Daten nicht zwangsläufig mit dem mobilen 
Datennetz/WLAN verbunden sein kann. D.h. die Daten, die in die DB 
geschrieben werden sollen (Uhrzeit/Datum-Entry), müssten auf dem mobilen 
Gerät irgendwie "zwischengespeichert" werden und automatisch auf die DB 
geschrieben werden, sobald wieder Datennetz/WLAN verfügbar ist.

Wie kann man also diese DB mit den "zwischengespeicherten" Daten vom 
Handy irgendwie "abgleichen"?
Oder sollte ich weiterhin zwei Datenbanken haben (eine auf dem Gerät, 
die andere auf dem Server im Web), die man dann auf "Knopfdruck" bei 
verfügbarem WLAN/Datennetz abgleicht?

Ich hoffe, ich habe mich verständlich ausgedrückt?
Habt ihr Ideen?

Danke!
Gast #5215871
Lesenswert?

Ok.. gutes Stichwort!
D.h. dass ich zunächst die lokale App mit der webDB abgleiche (während 
ich im WLan bin) und anschließend z.B. von einer Weboberfläche die Daten 
der webDB ändere. Bin ich mit der Pflege fertig, klicke ich auf der 
Weboberfläche auf "exportieren" und aktualisiere die lokale DB?

Gibts denn da keinen DB-seitigen Mechanismus, der automatisch abgleicht, 
wenn mobiles Datennetz verfügbar ist?

Gruß
Gast #5216578
Lesenswert?

Eine "ordentliche" Datenbank kennt eine Transaktion-ID.

Mit der kann Mann natuerlich einfach feststellen, welche
Datenbank die aktuelleren Daten hat, und entsprechend die
Daten syncen. Also: Alle Transaktionen die noch fehlen
auf die nicht aktuelle Datenbank anwenden.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren