首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

请高手帮忙,android 同步有关问题, 在小弟我的contact sync的时候

2012-12-26 
请高手帮忙,android 同步问题, 在我的contact sync的时候当我再android模拟器上同步联系人的时候, 如果有

请高手帮忙,android 同步问题, 在我的contact sync的时候
  当我再android模拟器上同步联系人的时候, 如果有一个联系人被更新, 我想知道这个时机, 然后把联系人反映到我的应用程序上, 我现在只能请求sync, 却不知道他什么时候完成, 什么时候同步下来一个联系人。

我的code:

  private void requestSync()
{
    AccountManager am = AccountManager.get(this);
        Account[] accounts = am.getAccounts();
        
        for (Account account : accounts)
        {
            int isSyncable = ContentResolver.getIsSyncable(account, ContactsContract.AUTHORITY);
            
            if (isSyncable > 0)
            {
                Bundle extras = new Bundle();
                extras.putBoolean(ContentResolver.SYNC_EXTRAS_MANUAL, true);
                ContentResolver.requestSync(accounts[0], ContactsContract.AUTHORITY, extras);
            }
        }
}
[解决办法]
你可以使用ContentResolver.addStatusChangeListener监听系统同步的状态,在onStatusChanged方法里判断ContentResolver.isSyncPending和ContentResolver.isSyncActive,两个都为false表示一次同步结束了,然后可以为联系人URI注册侦听器,registerContentObserver,当联系人表有变化,就会回调onChange

热点排行