android注册内容观察者

来源:互联网 发布:百度网盘老是网络异常 编辑:程序博客网 时间:2024/05/23 01:20

一、项目目录结构

上图中的前两个项目已在android内容提供者contentProvider实现了,本例只是借助一下,其中第一个项目AccountProvider.java类中下面代码为本例发送消息。

getContext().getContentResolver().notifyChange(uri, null);
二、MainActivity.java代码
package com.zgs.registerContentObserver;import android.app.Activity;import android.database.ContentObserver;import android.net.Uri;import android.os.Bundle;import android.os.Handler;import android.view.Menu;import android.view.MenuItem;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//[1]注册内容观察者 Uri uri = Uri.parse("content://com.zgs.provider/");//false 观察的uri 必须是一个确切的uri  如果是truegetContentResolver().registerContentObserver(uri, true, new MyContentObserver(new Handler()));}//定义内容观察者private class MyContentObserver extends ContentObserver{public MyContentObserver(Handler handler) {super(handler);}//当我们观察的uri发生改变的时候调用@Overridepublic void onChange(boolean selfChange) {System.out.println("哈哈 数据库被操作了 ");super.onChange(selfChange);}}}
三、效果显示

0 0
原创粉丝点击