11

我正在製作一個使用SQLite的應用程序字典。我有一張單獨的表格來保存這對外來詞和它們的翻譯。我想要同步此表格中的特定電子表格在Google文檔Android Sync Sqlite

我發現這個awesome library檢索和操縱GoogleSpreadsheets,所以至少我是覆蓋這一點。但我不同意這種同步。現在,

  1. 我可以用同一個SyncAdapter做我SQLiteGoogleSpreadsheet之間的同步?如果是的話,我會怎麼做呢?我會檢索並操縱onPerformSync中的電子表格行嗎?
  2. 對於這種情況,可能有哪些其他方法?我是否應該使用普通服務在用戶請求時進行檢查(例如,在主要活動中)?

在谷歌I/O西元(特別是在Android REST client apps),他們似乎非常有說服力的使用SyncAdapter但我不知道這是否可以幫助我沒有實際REST服務。

在此先感謝..

+1

看到這個問題。它有你的問題的答案。 http://stackoverflow.com/questions/6314977/how-can-i-sync-my-android-sqlite-database-with-a-database-on-a-server-using-json – 2012-06-26 13:06:04

回答

1

一個很好的理由來使用Android SyncAdapterContentProviderSyncManager的是,你會從已保存的電池壽命和其他資源的有用谷歌系統的知識中獲益。部分內容位於您鏈接的視頻中。例如,指數退避邏輯可以防止浪費的同步嘗試。

在今天的Google I/O 2012 talk "Making Good Apps Great: More Advanced Topics for Expert Android Developers."中,通過節省電池無線電功率可以保留電池壽命。雖然沒有明確提及,但我認爲SyncManager很可能具有本視頻中提及的電池節電特性。

根據我對API和其他資源(如com.example.android.samplesync包)的閱讀(沒有實際執行任何內容),似乎該模式足夠靈活以適應您的程序需求。

我正在使用的團隊已經爲我們的android應用程序實現了自定義同步,但是我可以告訴你我們並沒有考慮這個選項,因爲我們致力於編寫儘可能多的邏輯以便與WebView一起運行。我不一定會推薦,但這超出了這裏的範圍。