0

Android搭載端末で、[設定]> [アカウント]> Googleアカウント>の[カレンダーの同期]をオンにすると、正確に何が実行されますか?[設定]> [アカウント]> [Googleアカウント]> [カレンダーを同期する]をチェックすると、Android搭載端末で正確に実行されるものは何ですか?

Google Calendar Serverに接続し、必要な変更を取得してローカルのカレンダープロバイダテーブルを更新する、内蔵の同期アダプタのようなものが必要であると仮定します。カレンダープロバイダのテーブルを同期させておくために、独自のカレンダー同期アダプターを実装するのではなく、この機能を使用する方法はありますか?

可能であれば、onPerformSync()カレンダー固有のサンプルの実装がありますか?

サービス、同期アダプタ、コンテンツオブザーバ、ContentResolver.requestSync()などの書き込み、設定、使用方法はわかっています。私にはまだわかりませんが、具体的にはonPerformSync()を実装してGoogleカレンダーを同期する方法と、私自身の実装を書いてください。

答えて

0

シンクアダプタコンポーネントは自動的にデータ転送を行いません。代わりに、データ転送コードをカプセル化して、同期アダプタフレームワークがアプリの関与なしにバックグラウンドでデータ転送を実行できるようにします。フレームワークがアプリケーションのデータを同期する準備ができたら、メソッドonPerformSync()の実装を呼び出します。私は同期アダプタが何を知っている

/* 
* Specify the code you want to run in the sync adapter. The entire 
* sync adapter runs in a background thread, so you don't have to set 
* up your own background processing. 
*/ 
@Override 
public void onPerformSync(
Account account, 
Bundle extras, 
String authority, 
ContentProviderClient provider, 
SyncResult syncResult) { 
/* 
* Put the data transfer code here. 
*/ 
... 
} 
+0

次のスニペットは、onPerformSyncの全体的な構造を()を示しています。問題は**特定のGoogleカレンダーの同期のために** onPerformSync()を実装する方法です。もう1つ:Android **は、[設定]> ...> [カレンダーの同期]をクリックすると同期する方法を知っています**;私のアプリでこの機能をデフォルトの同期アダプタとして使用できないのはなぜですか? – Zmiter

関連する問題