6

Android アプリで同期アダプターを使用する必要があるかどうかを把握しようとしています。

手続き型アプローチの例:

  1. (ネットワークカバレッジあり) ユーザーが行った変更は、自動的にサーバーに送信されます。
  2. (ネットワーク カバレッジなし) 変更は sqlite テーブルに保存され、オンライン ブロードキャストが変更をアップロードするのを待ちます。
  3. サーバーに送信された変更は、サーバー上にあるものをある程度ミラーリングする sqlite テーブルに保存されます。
  4. サーバー上の変更は、C2DM フレームワークを使用してユーザーに変更を通知します。
  5. アプリが通知を受け取ると、サーバーから必要なデータを取得し、sqlite テーブルを更新します。

質問ですが、この作業には同期アダプターを使用する必要がありますか? もしそうなら、上記の私の例に基づく高レベルのアプローチは何でしょうか。ありがとうございました。

4

2 に答える 2

2

どのサーバーアプリケーションと同期しますか?アプリでユーザーデータをサーバーと同期する場合は、C2DM(同期アダプターを使用)が最適です。それはオーバーヘッドを提供します。ほとんどの場合、単純なRESTfulインターフェイスの方が作成と保守が簡単であることがわかりました。

より詳細な回答が必要な場合は、アプリに関する詳細情報を提供する必要があります。

于 2012-06-04T01:36:12.623 に答える
1

バッテリーの消耗を気にしない場合は、SyncAdapter定期的な双方向同期 (ダウンとアップストリーム) を実行し、ローカル データベースのみを変更してユーザーのアクションと対話するために使用します。このように、サーバー側で必要なスクリプトは 2 つだけです。1 つはダウンストリーム同期用で、もう 1 つはアップストリーム同期用です。

もちろん、持っている必要があります

1)。3 つのフラグ、つまり、ローカル データベースがダーティ データを示すための insert_state、update_state、delete_state。

2)。ローカル データベースとリモート データベースの両方の uuid

GoogleIO RESTFUL SYNCING リファレンス: http://www.youtube.com/watch?v=xHXn3Kg2IQE

于 2013-11-21T17:05:26.160 に答える