android.database.ContentObserver
Receives call backs for changes to content.
使用方式:
1.重写ContentObserver类的onChange方法。
private class DataChangeObserver extends ContentObserver
publicDataChangeObserver() {
super(mHandler);
//当Constants.CONTENT_URI记录内容改变时回调onChange方法
//写法一
@Override
public void onChange(boolean selfChange) {
CONTENT_URI, new String[] {
ID, DataProviders.NAME }, null, null, null);
NAME));
ID));
mHandler.showMessage(id, data);
//写法二
mDbObserver = new ContentObserver(mHandler) {
@Override
public void onChange(boolean selfChange) {
false, ImageManager.isMediaScannerScanning(
2.注册ContentObserver.
ContentObserver mObserver = new DataChangeObserver();
getContentResolver().registerContentObserver(Constants.CONTENT_URI, true, mObserver);
3.注销ContentObserver
@Override
protected void onStop() {
super.onStop();
getContentResolver().unregisterContentObserver(mObserver);
实际应用:
1. 短信监听
resolver.registerContentObserver(SMS.CONTENT_URI, true, mObserver);
2. 当数据库数据改变时界面更新。用于下载管理