2013-05-08 13 views
5

Chcę zsynchronizować com.android.contacts i com.android.calendar z jednym SyncAdapter. czy to możliwe?Synchronizowanie wielu dostawców za pomocą jednego SyncAdapter

Jeśli tak, w jaki sposób muszę edytować następujące wiersze?

<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" /> 

Odpowiedz

3

Appearently nie:

„Każdy SyncAdapter obraca się do SyncThread że jest związany z instytucji określonej w sync-adapter.xml i wielokrotne władze nie mogą być zdefiniowane w tym pliku xml ...”

(kianatennyson)

How to use one SyncAdapter-class for multiple authorities?

+0

Ta odpowiedź jest źle - gdy nie można związać 'SyncAdapter' do więcej niż jednego organu, nadal można uzyskać dostęp do wszystkich eksportowanych z' ContentProvider's Metoda 'onPerformSync()' ... – Vasiliy

1

można synchronizować dowolny ContentProvider z SyncAdapter, o ile jest eksportowany i pozwala na modyfikację podstawowych danych.

Aby osiągnąć to, że nie trzeba określać dodatkowych dostawców lub organom w XML - po prostu odniesienie do ContentResolver wewnątrz onPerformSync() i używać go w celu uzyskania dostępu ContentProvider s interesów.

na trochę więcej informacji, przeczytaj tę odpowiedź: https://stackoverflow.com/a/30693866/2463035

Powiązane problemy