博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android -- 内容观察者
阅读量:7112 次
发布时间:2019-06-28

本文共 1500 字,大约阅读时间需要 5 分钟。

一张图了解内容观察者:

背景                                                                                         

通过发送一条短信,然后手机接收到,那么数据库必然改变,内容观察者这时候就起作用了。

程序                                                                                         

public class MainActivity extends Activity {    @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()));                       }        class MyObserver extends ContentObserver    {        public MyObserver(Handler handler) {            super(handler);                    }        //当内容观察者观察到数据库的内容发生了变化就会调用这个方法        //观察到消息邮箱里有一条数据库内容变化的通知        @Override        public void onChange(boolean selfChange) {            super.onChange(selfChange);            Toast.makeText(MainActivity.this, "数据库的内容发生了变化", Toast.LENGTH_LONG).show();            Uri uri = Uri.parse("content://sms/");            ContentResolver resolver = getContentResolver();            Cursor cursor = resolver.query(uri, new String[]{"address" ,"date", "type", "body"}, null, null, null);            cursor.moveToFirst();            String address = cursor.getString(cursor.getColumnIndex("address"));            String body = cursor.getString(cursor.getColumnIndex("body"));            System.out.println("address"+address+"+++++++body:"+body);            cursor.close();        }                      }    }

效果                                                                                          

注意一下短信的读取的权限哈!!

我是天王盖地虎的分割线                                                                

源代码:

内容观察者.zip

 

 

 

 

转载请注明出处:

你可能感兴趣的文章
[HCNA Cloud]云计算解决方案
查看>>
我的友情链接
查看>>
无功补偿的安装位置
查看>>
PHP的循环语句
查看>>
为什么满足用户需求是错误的做法?
查看>>
Docker Engine的Web管理界面
查看>>
Alpine Linux 快速入门
查看>>
nginx配置详解
查看>>
lduan server 2012 远程桌面WEB连接高可用 下(二十一)
查看>>
比CMD更强大的命令行WMIC
查看>>
我的友情链接
查看>>
查看服务器性能工具
查看>>
E1配置与分析(4种常见E1组网结构)-史上最全
查看>>
Sybase数据库备份和还原
查看>>
HP UNIX学习
查看>>
spring--spring集成redis
查看>>
【问题】Kylin Step 10 Build Cube失败
查看>>
信息提示框:MessageBox
查看>>
教你用报表工具搭建企业考核系统
查看>>
321android浏览器
查看>>