2013-05-08 21 views
5

com.android.contactsとcom.android.calendarを1つのSyncAdapterで同期します。これは可能ですか?1つのSyncAdapterで複数のプロバイダを同期する

「はい」の場合、次の行をどのように編集する必要がありますか?

<sync-adapter 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:contentAuthority="com.android.contacts" 
    android:accountType="com.package.account" 
    android:supportsUploading="false" 
    android:userVisible="true" /> 

答えて

3

Appearentlyない:

「...各SyncAdapterは同期adapter.xmlで定義された権限にバインドされているSyncThreadをスピンアップし、複数の当局は、このXMLファイルで定義することはできません」

あなたはから任意のContentProviderを同期することができ

How to use one SyncAdapter-class for multiple authorities?

+0

この答えが間違っている - あなたは、複数の機関に 'SyncAdapter'を結ぶことはできませんが、あなたはまだからエクスポートされたすべての' ContentProvider'sにアクセスすることができます'onPerformSync()'メソッド... – Vasiliy

1

(kianatennyson)それがエクスポートされ、基礎となるデータの変更が可能である限り、を参照してください。

あなたがXMLで余分なプロバイダや当局を指定する必要はありません、これを達成するために - ちょうどonPerformSync()ContentResolverへの参照を取得し、関心のContentProvider Sにアクセスするためにそれを使用。少し詳細情報については

、この答えをお読みください。https://stackoverflow.com/a/30693866/2463035

関連する問題