11

を使った辞書のようなアプリを作っていますSQLite。私は外国語のペアとその翻訳を保持する単一のテーブルを持っています。このテーブルをGoogleドキュメントの特定のスプレッドシートと同期したいと思います。

私はこの素晴らしいライブラリを取得して操作できることを発見しGoogleSpreadsheetsたので、少なくともそのためにカバーされています。しかし、私は同期について快適ではありません。今、

  1. を使用して、とのSyncAdapter間でこの同期を行うことはできますか?はいの場合、どうすればよいですか?またはsmthのスプレッドシートの行を取得して操作しますか?SQLiteGoogleSpreadsheetonPerformSync
  2. そのようなシナリオの他の選択肢は何でしょうか?ユーザーが要求したときに(たとえば、メインアクティビティで)チェックを行うために通常のサービスを使用する必要がありますか?

Google I / Oビデオ(特にAndroid RESTクライアントアプリ)では、使用するのにかなり説得力があるように見えますSyncAdapterが、実際のRESTサービスなしで役立つかどうかはわかりません。

前もって感謝します..

4

1 に答える 1

1

Androidを使用する理由の1つSyncAdapterは、バッテリーの寿命ContentProviderSyncManagerその他のリソースを維持するのに役立つGoogleシステムの知識を活用できることです。このコンテンツの一部は、リンク先のビデオに含まれています。たとえば、同期の無駄な試行を防ぐための指数バックオフロジック。

今日のGoogleI/ O 2012の講演「優れたアプリを素晴らしいものにする:エキスパートAndroid開発者向けのより高度なトピック」には、セルの無線電力を節約することによるバッテリー寿命の維持に関するいくつかの良い情報があります。 明示的には触れられていませんSyncManagerが、このビデオで言及されているバッテリー節約特性を備えている可能性が高いと思います。

APIやパッケージなどの他のリソースを読んだ(実際には何も実装していない)ことに基づくとcom.example.android.samplesync、パターンはプログラムのニーズに適応するのに十分な柔軟性があるようです。

私が働いているチームは、Androidアプリにカスタム同期を実装しましたが、で実行するために可能な限り多くのロジックを作成することを約束したため、このオプションを考慮しなかったと言えますWebView。私は必ずしもそれをお勧めしませんが、それはここでの範囲を超えています。

于 2012-06-28T21:46:16.313 に答える