android Content Observer内容观察者基本使用

复制代码
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(); } } }
复制代码

 

posted @   大空白纸  阅读(331)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示