2012-07-26 46 views
9

我正在嘗試開發一個應用程序,該程序僅使用ContentResolver.requestSync(account, authority, extras);同步所選帳戶。支持選定帳戶的受限制列表

我能夠同步聯繫人和日曆通過分別使用com.android.contactscom.android.calendar作爲authority

但是,有沒有辦法讓權威列表支持一個特定的帳戶?

另外,使用null作爲authority有什麼影響?

回答

4

使用getSyncAdapterTypes()可獲取有關係統已知的SyncAdapters的信息。

SyncAdapterType[] types = ContentResolver.getSyncAdapterTypes(); 
for (SyncAdapterType type : types) { 
    if (yourAccount.type.equals(type.accountType)) { 
     boolean isSyncable = ContentResolver.getIsSyncable(yourAccount, type.authority) > 0; 
     if (isSyncable) { 
      ContentResolver.requestSync(yourAccount, type.authority, extras); 
     } 
    } 
} 

不要忘記getIsSyncable()方法需要READ_SYNC_SETTINGS許可。

+1

Thankz @biegleux ..它的工作..但是,它沒有授予同步電子郵件的權限..任何想法? – JiTHiN 2012-08-01 10:11:37