我写的代码如下:
ContentResolver localContentResolver2 = getContentResolver();
 Uri localUri2 = ContactsContract.Groups.CONTENT_URI;
 localContentResolver2.registerContentObserver(localUri2, true, mObserverGroup);
 ContentResolver localContentResolver3 = getContentResolver();
    
 ContentResolver localContentResolver1 = getContentResolver();
 Uri localUri1 = ContactsContract.Data.CONTENT_URI;
 localContentResolver1.registerContentObserver(localUri1, true, mObserver);public class ContactDatabaseObserverGroup extends ContentObserver {    public ContactDatabaseObserverGroup(Handler handler) {
super(handler);
// TODO Auto-generated constructor stub
    }    @Override
    public boolean deliverSelfNotifications() {
// TODO Auto-generated method stub
return super.deliverSelfNotifications();
    }    //ContactDatabaseObserverGroup
    @Override
    public void onChange(boolean selfChange) {
// TODO Auto-generated method stub
super.onChange(selfChange);
    }}我现在的需求是  在添加分组的时候mObserverGroup  被检测,而mObserver检测不到
在添加联系人的时候mObserver检测到, 而mObserverGroup  检测不到我哪里出问题了??

解决方案 »

  1.   

    mObserverGroup 和 mObserver监听的ContentProvider都不一样
    一个是ContactsContract.Groups.CONTENT_URI,一个是ContactsContract.Data.CONTENT_URI那当然是各自监听各种的改变事件了
      

  2.   

    wenzheng38
    我现在的需求是各自监听 各自的改变事件,但是实际情况下不是啊!!只要数据库变动,不管是Group表的变动还是Data表的变动,mObserverGroup 和 mObserver都能监听到!!!