Android的广播事件处理Broadcast Receiver

         Broadcast Receiver广播接收器,和事件处理机制类似,只不过事件处理机制是程序级的,广播事件处理机制是系统级的。

          我们可以通过sendBroadcast()方法来发起一个系统级的事件广播来传递消息,我们可以在应用程序中实现Broadcast Receiver来监听和响应这些广播的Intent.。

         事件广播:构建Intent对象,调用sendBroadcast方法来将广播发出去。事件的接收是通过定义一个继承Broadcast Receiver的类来实现的。继承该类后覆盖其onreceive()f方法,在该方法中响应事件。

         Android系统中定义了很多标准的Broadcast Receiver来响应系统的广播事件。例如:ACTION_TIME_CHANGED时间改变时触发, ACTION_BOOT_COMPLETED系统启动完成后触发,ACTION_PACKAGE_ADDED添加包的时候触发,ACTION_BATTERY_CHANGED电量低时触发。

        自定义Broadcast Receiver

          自定义Broadcast Receiver首先在程序组件里构建要广播的intent,使用sendBroadcast方法发送出去,其次定义一个广播接收器,该广播接收器继承Broadcast Receiver,并且覆盖了onreceive方法来响应事件,最后注册该广播接收器。

       Broadcast Receiver组件没有提供可视化界面用来显示广播信息,,我们可以使用Notification和notificationManager来实现可是话信息的显示,通过他们我们可以显示广播信息的内容,图标以及震动等消息。

      使用Notification和notificationManager,一般获取系统级的服务notificationManager,然后实例化Notification,设置其属相,通过notificationManager发出通知。

      获取系统级的服务notificationManager通过调用Context的getSystemService方法实现。如:

          String service = NOTIFICATION_SERVICE;

           notificationManager  nm = (notificationManager )getSystemService(service);

     alarmManager提供了一种系统级的提示服务,允许你安排在将来的某个时间执行一个服务,alarmManager对象一般不直接实例化,而是通过Context.getSystemService(Context.ALARM_SERVICE)方法获得。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值