0

モバイルアプリとWebプロジェクトにプロファイルがあります。現在、それらをどのように同期させるかを考えています。重要なのは、人がモバイルプロファイルに何かを追加した場合、IDのバンドルをWebサーバーに送信するだけで、サーバーもそれらを追加するということです。アイテムの削除と同じです。しかし、人が常時接続せずにモバイルプロファイルで削除し、次にWebサーバーのプロファイルで自分のプロファイル内の何かを削除するとしたらどうでしょうか。その後、どうにかして同期する必要があります。

そのような問題の解決策はすでに見つけられている必要があることを理解していますが、残念ながら私はまだ何も役に立ちませんでした。

4

1 に答える 1

1

VirgilDobjanschiのGoogleI/ 0 2010で、RESTfulクライアントアプリケーションの設計に関する講演をご覧になることをお勧めします:こちら。それは約1時間の長さですが、非常に有益で役に立ちます。

注意すべきいくつかの重要なポイントは次のとおりです。

  • SQLiteデータベースを使用して、アプリケーションとWebサーバー間のキャッシュとして機能します。これにより、接続がない場合でも変更を保存し、接続を再度取得すると送受信できます。
  • 単一のアクティビティのライフサイクルによって制限されないため、サービスを使用してREST呼び出しを処理します。このようにして、ユーザーまたはAndroid OSがアクティビティを強制終了したり、電話でアプリケーションが画面から押し出されたりした場合でも、サーバーリクエストを実行して適切に処理できます。スレッドを処理するため、インテントサービスを使用しています。

また、どの同期関係がアプリケーションに最も適しているかを判断する必要があります。つまり、「SQLiteとWebサーバーのどちらのデータベースを上書きする必要があるか」ということです。では、2つの間に違いがある場合、どちらのデータを「正しい」と見なす必要がありますか?これは一般にマスタースレーブと呼ばれます。

于 2012-05-31T12:48:52.467 に答える