转: 从现实生活中理解什么是广播机制

来自:http://blog.sina.com.cn/s/blog_714338950100p4km.html

一听到广播我们第一感觉就会联想到小时候村里面的广播,每逢村里有什么活动都是通过广播发送的。收听收音机也是一种广播,在收音机中有很多个广播电台,每个广播电台播放的内容都不相同。接收广播时广播(发送方)并不在意我们(接收方)接收到广播时如何处理。好比我们收听交通电台的广播,电台中告诉我们现在在交通状况如何,但它并不关心我们接收到广播时做如何做出处理,这不是广播应该关心的问题,OK,到这里我们从生活中的一些小例子浅浅的理解了一下广播,那么Android 中的广播是如何操作的呢?

Android里的广播机制

在 Android 里面有各种各样的广播,比如电池的使用状态,电话的接收和短信的接收都会产生一个广播,应用程序开发者也可以监听这些广播并做出程序逻辑的处理。

案例分析

一个经典的电话黑名单,首先通过将黑名单号码保存在数据库里面,当来电时,我们接收到来电广播并将黑名单号码与数据库中的某个数据做匹配,如果匹配的话则做出相应的处理,比如挂掉电话、比如静音等等。。。

Android系统里可以接收和发送广播,在Android里可以接收和发送两种形式的广播:

一、接收系统广播:

接收系统广播需要两步:

1.编写一个继承BroadcastReceiver的类,并实现BroadcastReceiver里的onReceiver方法。如果应用程序接收到系统发送的广播,就会调用onReceiver方法。

2.在AndroidManifest.xml文件里使用<receiver/>标签来配置上步中定义的类以及接收到哪一个Broadcast Action。

二、在自己的应用程序里发送广播:

如果在自己的应用程序中发生某些动作时想通知其他的应用程序或向其他应用程序传递数据,就可以考虑通过sendBroadcast方法发送广播。

使用sendBroadcast方法发送的数据实际上也是Intent对象,只是该Intent对象指定的是Broadcast Action,而不是Activity Action。

例如:Intent broadcastIntent = new Intent("自己定义的类名");

sendBroadcast(broadcastIntent);

****总结(在自己的应用程序里发送广播)****

  • 在Android 中如果要发送一个广播必须使用sendBroadCast 向系统发送对其感兴趣的广播接收器中。
  • 使用广播必须要有一个intent 对象必设置其action动作对象
  • 使用广播必须在配置文件中显式的指明该广播对象
  • 每次接收广播都会重新生成一个接收广播的对象
  • 在BroadCast 中尽量不要处理太多逻辑问题,建议复杂的逻辑交给Activity 或者 Service 去处理
时间: 2024-10-22 15:56:57

转: 从现实生活中理解什么是广播机制的相关文章

BroadcastReceiver--Android广播机制

什么是广播 生活中的电视频道.收音机.手机.都有自己的特定广播,他们不管是否有人关心.收听等,不管你是否看电视,每个频道都实施按照自己的进步进行播放.收音机也是!所以我理解的android广播机制也就是这样--广播发布者只负责把发生的事件发出,至于是否有接听者或者接听者接收到怎样处理并不关心. 我们都知道电台发送的内容大都以语音播报为主,而android中我们的BroadcastReceiver相当于一个事件,内容存放到intent中,由它来完成传输工作,至于是否进行处理是由intent-fil

Javascript中理解发布--订阅模式

阅读目录 发布订阅模式介绍 如何实现发布--订阅模式? 发布---订阅模式的代码封装 如何取消订阅事件? 全局--发布订阅对象代码封装 理解模块间通信 回到顶部 发布订阅模式介绍 发布---订阅模式又叫观察者模式,它定义了对象间的一种一对多的关系,让多个观察者对象同时监听某一个主题对象,当一个对象发生改变时,所有依赖于它的对象都将得到通知. 现实生活中的发布-订阅模式: 比如小红最近在淘宝网上看上一双鞋子,但是呢 联系到卖家后,才发现这双鞋卖光了,但是小红对这双鞋又非常喜欢,所以呢联系卖家,问卖

我在现实生活中遇到了电视剧中的神奇人物

一个人读过书和没读书的有区别,读书多少质量也有区别.对面坐了一个三本的男孩子,心里只有钱,眼里嘴里不是吃就是喝,再不然就是睡,喜欢和一堆女生窝在一起叽叽喳喳炮轰一个他不喜欢的人.用公司的电脑会狠命的砸键盘,还扬言又不是我的电脑.一起团建出游时,会把坚果皮在酒店里扔的到处都是,还说会有服务生来打扫.这些都是从他和其他女生的对话中看到的,遇到这种情况,我只能笑而不语.我不太理解pahf招聘条件明明写的是本科以上,为何会招这样神奇的人进来,更让我惊讶的是周围人的学历普遍都不是很高.这和刚进这家企业,看

安卓开发_深入理解广播机制

一.Broadcast(广播) 在Android中,有一些操作完成以后,会发送广播,比如说发出一条短信,或打出一个电话,如果某个程序接收了这个广播,就会做相应的处理.这个广播跟我们传统意义中的电台广播有些相似之处.之所以叫做广播,就是因为它只负责“说”而不管你“听不听”,也就是不管你接收方如何处理.另外,广播可以被不只一个应用程序所接收,当然也可能不被任何应用程序所接收. (百度百科) 二.BroadcastReceiver(广播接收器) 1.自定义BroadcastReceiver 自定义广播

【项目总结】自然语言处理在现实生活中运用

[项目总结]自然语言处理在现实生活中运用 作者 白宁超 2015年11月9日23:27:51 摘要:自然语言处理或者是文本挖掘以及数据挖掘,近来一直是研究的热点.很多人相想数据挖掘,或者自然语言处理,就有一种莫名的距离感.其实,走进去你会发现它的美,它在现实生活中解决难题的应用之美,跟它相结合的数学之美,还有它与统计学的自然融合.语言只是一种实现工具,真正难度的是模型的理解和对模型的构建.本文结合自然语言处理的基本方法,完成对2002--2010年17套GET真题的核心单词抽取.麻雀虽小,也算五

并发、非阻塞、事件驱动、上下文切换、多核在现实生活中的例子!

平常生活中就有很多例子可以去研究和理解并发和多线程. 比如: 做饭有几个任务(说简单点):煮饭.炒菜 同步就是,先去煮饭,等20分钟饭煮好了再去炒菜:我想现实生活中没有人去这样做,这样效率太低. 我没必要等到把饭煮熟好了再去炒菜,可以边煮饭边炒菜,并发进行:等菜炒完了,饭也煮好了:这样节省了时间,提高了效率. 这里面我们可以看到: --并发:煮饭和炒菜是并发执行,我就是CPU(一个人单核):说明单核也能实现并发: --IO阻塞:煮饭的电饭煲是一个相对耗时的处理动作,比如是一个网络的请求 --非阻

[开发技巧]&#183;Numpy广播机制的深入理解与应用

[开发技巧]·Numpy广播机制的深入理解与应用 1.问题描述 我们在使用Numpy进行数据的处理时,经常会用到广播机制来简化操作,例如在所有元素都加上一个数,或者在某些纬度上作相同的操作.广播机制很方便,但是概念却也有些复杂,可能会让一些初学者感到困惑,在使用过程中,产生一些错误. 本文以实战演练的方式来讲解广播机制的概念与应用,不仅仅适用于Numpy,在TensorFlow,PyTorch,MxNet的广播机制中同样适用. 2.原理讲解 广播机制遵循一下准则: 1.首先以最长纬度为准拓展为相

程序开发--在现实生活中寻找可利用的资源

经历了很多次软件开发之后,每个程序员是否都会体验到程序与我们的生活.工作密切相关.每次的程序要么应用到生活的某个娱乐.助理以及工作的各种场合,在进行开发之前,总会围绕着用它干什么,能给我带来什么效益开端. 那么,生命即将开始. 前期的规划是整个生命的重中之重,没有一个完美的应用采集,分析,架构,程序生命期会严重受到影响.甚至开始没用之前就已经奄奄一息了,围绕着实用性,效益性,安全性展开合理的生命旅程吧 ! 于是,生命已经开始了 . 设计完成之后,理论性分析完毕了,完全进入到一个问题性阶段.这个阶

人要怎样活在现实生活中

人要怎样活在现实生活中 2014-04-18 12:58薇儿7kbW搿 | 分类:夫妻 | 浏览4次人要怎样活在现实生活中才不会累我有更好的答案 分享到: 2014-04-18 19:58提问者采纳 人生不可能没有累这个字,只是你不会从累中去享受,不是要怎样活在现实中,是你已经活在现实中了,这是无法改变的事实.所以你要勇敢去面对,而不是埋怨现实的残酷. 人要怎样活在现实生活中,布布扣,bubuko.com