18

私たちは現在何をしていますか?
Webサービス(RESTful)を使用して公開されるサーバー上に、構造化されたテキストデータがいくつかあります。私のアプリケーションは、このサーバーを定期的にポーリングして(AlarmManagerService)、データをフェッチしてローカルデータベース(sqlite)に保存します。また、ユーザーは事前に認証され、アクセスが許可されます。

質問:

  1. SDKにはSyncAdapter/AccountManagerクラスがあり、上記の同期を実現するためにアプリケーションで使用できるかどうか疑問に思っていました。

  2. はいの場合、このアダプターを使用してセットアップされた同期をサポートするには、バックエンドでどのような種類のインフラストラクチャが必要ですか?このアダプタの使用方法の詳細やその他の情報を提供する記事などへのリンクをいただければ幸いです。

4

1 に答える 1

18

はいSyncAdapter/AccountManagerはユースケースに役立ちます。オーセンティケーター(バックグラウンドでAccountManagerを呼び出す)は、アプリの認証を処理できます。SyncAdapterは、サーバーからローカルデータストアへの定期的な同期を処理できます。AlarmManagerを使用して自分で実装する必要はありません。SampleSycnAdapter / Authenticatorの使用に関するサンプルコードについては、AndroiddevguideのSampleSyncAdapterを参照してください。

バックエンドRESTサーバーは、多くの変更を加えることなく、SyncAdapterで問題なく動作します。唯一の違いはクライアントにあります。たとえば、AlarmManagerでサーバーのフェッチデータメソッドを呼び出す代わりに、SyncAdapterを拡張するクラスのonPerformSync()で呼び出します。上記のサンプルコードにより、より明確になります。これがお役に立てば幸いです。

于 2010-09-08T06:34:09.103 に答える