Android 四大组件之一 Broadcast广播

学习自:http://blog.csdn.net/liuhe688/article/details/6955668


broadcast介绍:android四大组件之一,用于接收系统和应用中的广播。广播的onReceiver()方法不能再10秒内执行完成,Android就会认为程序无响应,会弹出ANR(Application No Response)的对话框,因此不能做一些耗时的工作。若要处理一些耗时的工作,建议启动一个service来完成,不建议使用新线程去完成,因为广播生命周期短,可能出现子线程还未结束,广播就已经退出了。


广播的注册方式有两种:一种是静态注册,在AndroidManifest里面注册,这种方式注册的广播,在程序关闭的情况下也可以收到广播。

                                                   还有一种是动态注册,在程序内部用代码注册,这种方式注册的广播生命周期和程序的生命周期是一样一样的。

广播的发送有两种方式:sendBroadcast():普通发送广播,所以监听这个广播的都可以收到消息

                                                   sendOrderedBroadcast():发送有序广播,按照广播注册时的优先级(android:priority  范围-1000~1000),

                                                   从高到底发,高的优先级可以对广播进行数据的处理或终止广播(abortBroadcast)。


1.静态注册:常驻型广播:在androidmanifest.xml当中注册

   <receiver>
        <intent-filter>
               <action android:name="android.intent.action.PICK"/>
        </intent-filter>
   </receiver>

  弊端:始终处于活动状态,对于手机的cpu和电量都不利


2.动态注册:不是常驻型广播:在activity里面注册;

   registerReceiver(receiver, filter);
   unregisterReceiver(receiver);


广播还可以实现短信监听,电话拦截,系统电量的监听,网络的监听,开机启动等等。


        年轻人,要胆大,心里想干什么,喜欢干什么,就去做。不要怕你什么都不会。就算你失败也不会损失什么,你本来就没钱,没经验。因为年轻,就会有很多重头再来的机会。年轻,就不要怕,要大胆尝试。(话说我也是一个年轻人,哈哈哈哈哈~)



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值