如何使用Android ContentObserver 监听数据库变化
我写的代码如下: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 检测不到
我哪里出问题了?? --------------------编程问答-------------------- mObserverGroup 和 mObserver监听的ContentProvider都不一样
一个是ContactsContract.Groups.CONTENT_URI,一个是ContactsContract.Data.CONTENT_URI
那当然是各自监听各种的改变事件了。。。 --------------------编程问答-------------------- wenzheng38
我现在的需求是各自监听 各自的改变事件,但是实际情况下不是啊!!只要数据库变动,不管是Group表的变动还是Data表的变动,mObserverGroup 和 mObserver都能监听到!!!
补充:移动开发 , Android