22、内容观察者广播

3.内容观察者使用
1.注册内容观察者
Uri uri2=Uri.parse(“content://com.provider/delete”); //注册层内容观察者 resolver.registerContentObserver(uri2, true, new ContentObserver(new Handler()) { //监听内容提供者数据发生改变 public void onChange(boolean selfChange) { super.onChange(selfChange); System.out.println(“数据发生改变…”); } });
2.在内容提供者添加通知内容观察者代码
insert、update 、delete 方法中;
Uri uri2=Uri.parse(“content://com.provider/insert”); getContext().getContentResolver().notifyChange(uri2,null);

第7章 广播接收者
理解广播与广播接收器
广播事件处理属于系统级的事件处理(一般事件处理是属于View级的事件处理)
一个应用可以在发生特定事件时发送Broadcast, 系统中任何应用只要注册了对应的Receiver就会接收到此Broadcast
一个应用如果对某个广播感兴趣, 就可以注册对应的Receiver来接收广播
广播事件机制是应用程序(进程间)之间通信的一种手段
广播机制最大的特点就是发送方并不关心接收方是否接到数据,也不关心接收方是如何处理数据的,通过这种形式来达到接、收双方的完全解耦
广播事件处理过程即针对某一广播做出响应的过程

什么是广播接收者
Android系统中,内置了很多系统级别的广播,例如手机开机完成后会发送一条广播,电池电量不足时会发送一条广播等。

Android系统中提供了广播接收者BroadcastReceiver,广播接收者的作用就是接收来自系统或其他应用程序的广播,并作出回应。

广播接收者创建与注册
要使用广播接收者接收其他应用程序发出的广播,先要在本应用中创建广播接收者并进行注册。

         1、创建广播接收者
           public class MyBroadcastReceiver extends BroadcastReceiver {
       @Override
       public void onReceive(Context context, Intent intent) {
                          ………
       }
             } 

注册广播有两种方式,常驻型广播与非常驻型广播。

           1、注册常驻型广播
常驻型广播是当应用程序关闭后,如果接收到其他应用程序发出的广播,那么该程序会自动重新启动。常驻型广播在清单文件中注册。

    <receiver android:name="cn.itcast.MyBroadcastReceiver">            <intent-filter android:priority="20">  



2、注册非常驻型广播
非常驻型广播依赖于注册广播的组件的生命周期,例如,在Activity中注册广播接收者,当Activity销毁后广播也随之被移除。这种广播事件在代码中注册。
MyBroadCastReceiver receiver = new MyBroadCastReceiver(); Stringaction=“android.provider.Telephony.SMS_RECEIVED”;
IntentFilter intentFilter = new IntentFilter(action);
registerReceiver(receiver, intentFilter);
非常驻型广播可以在onDestory()方法中解除广播,具体代码如下:
unregisterReceiver(receiver);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值