package com.example.observertest;
import android.content.ContentResolver;
import android.database.ContentObserver;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.support.v7.app.ActionBarActivity;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;
public class MainActivity
extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ContentResolver resolver =
getContentResolver();
Uri uri = Uri.parse("content://sms/"
);
resolver.registerContentObserver(uri, true,
new MyObserver(
new Handler()));
}
private class MyObserver
extends ContentObserver
{
public MyObserver(Handler handler) {
super(handler);
}
//当内容观察者 观察到是数据库的内容变化了调用这个方法 //观察到消息邮箱里面有一条数据库内容变化的通知
@Override
public void onChange(
boolean selfChange) {
super.onChange(selfChange);
Toast.makeText(MainActivity.this, "数据库内容发生了改变", 1
).show();
}
}
}
转载于:https://www.cnblogs.com/zoro-zero/p/3948114.html
相关资源:Android中内容观察者的使用---- ContentObserver类详解