Frage

Ich mache eine Wörterbuch-Art einer App, die verwendet SQLite.Ich habe eine einzige Tabelle, die das Paar Fremdwörter und ihre Übersetzungen enthält.Ich möchte Sync diese Tabelle mit einer bestimmten Tabelle in Google Text & Tabellen.

Ich habe das gefunden tolle Bibliothek abrufen und manipulieren GoogleSpreadsheets, also bin ich zumindest dafür abgesichert.Aber ich fühle mich bei der Synchronisierung nicht wohl.Jetzt,

  1. Kann ich eine verwenden SyncAdapter um diese Synchronisierung zwischen meinem zu machen SQLite und ein GoogleSpreadsheet?Wenn ja, wie würde ich vorgehen?Würde ich die Zeilen der Tabelle in der abrufen und bearbeiten onPerformSync oder etwas?
  2. Was könnten die anderen Alternativen für ein solches Szenario sein?Sollte ich vielleicht einen normalen Dienst verwenden, um die Überprüfung durchzuführen, wenn der Benutzer dies anfordert (z. B. in der Hauptaktivität)?

Auf den Google I / O-Videos (insbesondere auf Android REST-Client-Anwendungen ) sie scheinen ziemlich überzeugend für die Verwendung der SyncAdapter aber ich bin mir nicht sicher, ob es mir ohne einen tatsächlichen Ruhedienst helfen könnte.

Danke im Voraus..

War es hilfreich?

Lösung

Ein guter Grund, Android zu verwenden SyncAdapter, ContentProvider und SyncManager ist, dass Sie von den Google-Systemkenntnissen profitieren, die für die Erhaltung der Akkulaufzeit und anderer Ressourcen nützlich sind.Ein Teil dieses Inhalts befindet sich in dem Video, auf das Sie verlinken.Zum Beispiel exponentielle Backoff-Logik, um verschwenderische Synchronisationsversuche zu verhindern.

Es gibt einige gute Informationen über die Erhaltung der Batterielebensdauer durch die Erhaltung der Zellfunkleistung in der heutigen Zeit Google I / O 2012 Vortrag "Gute Apps großartig machen:Fortgeschrittenere Themen für erfahrene Android-Entwickler." Obwohl nicht explizit erwähnt, denke ich, dass die SyncManager hat wahrscheinlich die batterieschonenden Eigenschaften, die in diesem Video erwähnt werden.

Basierend auf meiner Lektüre (ohne tatsächlich etwas zu implementieren) der APIs und anderer Ressourcen wie der com.example.android.samplesync paket, es scheint, dass das Muster flexibel genug ist, um sich an Ihre Programmanforderungen anzupassen.

Das Team, mit dem ich zusammenarbeite, hat eine benutzerdefinierte Synchronisierung für unsere Android-App implementiert, aber ich kann Ihnen sagen, dass wir diese Option nicht in Betracht gezogen haben, weil wir uns verpflichtet haben, so viel Logik wie möglich für die Ausführung mit dem zu schreiben WebView.Ich würde das nicht unbedingt empfehlen, aber das sprengt hier den Rahmen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top