ContentObserver的作用是监听特定uri的数据库的变化,从而可以及时的对数据进行处理
用法:
你需要注册内容观察者,调用如下代码:
public final void registerContentObserver(Uri uri, boolean notifyForDescendents, ContentObserver observer)
当你不需要监听内容时,调用如下代码取消:
public final void unregisterContentObserver(ContentObserver observer)
这要特别说一下这个uri,如果你是监听系统自带的一些数据库如短信,通讯录等的内容,你需要在源码中找到对应uri,如短信的uri是content://sms
当然你也可以自定义一个uri来实现对自己的数据库进行观察,自定义uri要注意以content://开头,还要记得在数据库内容改变时,自己调用
getContentResolver().notifyChange(Uri uri, ContentObserver observer);//通知观察者