位置: 编程技术 - 正文

Android之Broadcast与BroadcastReceiver

编辑:rootadmin

推荐整理分享Android之Broadcast与BroadcastReceiver,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

本文原文链接 BroadcastReceiver:

在Android中,Broadcast是一种广泛运用的在应用程序之间传输信息的机制。而BroadcastReceiver是对发送出来的 Broadcast进行过滤接受并响应的一类组件。下面将详细的阐述如何发送Broadcast和使用BroadcastReceiver过滤接收的过程:

首先在需要发送信息的地方,把要发送的信息和用于过滤的信息(如Action、Category)装入一个Intent对象,然后通过调用 Context.sendBroadcast()、sendOrderBroadcast()或sendStickyBroadcast()方法,把 Intent对象以广播方式发送出去。

当Intent发送以后,所有已经注册的BroadcastReceiver会检查注册时的IntentFilter是否与发送的Intent相匹配,若匹配则就会调用BroadcastReceiver的onReceive()方法。所以当我们定义一个BroadcastReceiver的时候,都需要实现onReceive()方法。

注册BroadcastReceiver有两种方式: 一种方式是,静态的在AndroidManifest.xml中用标签生命注册,并在标签内用标签设置过滤器。

另一种方式是,动态的在代码中先定义并设置好一个 IntentFilter 对象,然后在需要注册的地方调Context.registerReceiver()方法,如果取消时就调用 Context.unregisterReceiver()方法。如果用动态方式注册的BroadcastReceiver的Context对象被销毁时,BroadcastReceiver也就自动取消注册了。(特别注意,有些可能需要后台监听的,如短信消息)

另外,若在使用sendBroadcast()的方法是指定了接收权限,则只有在AndroidManifest.xml中用标签声明了拥有此权限的BroascastReceiver才会有可能接收到发送来的Broadcast。同样,若在注册BroadcastReceiver时指定了可接收的Broadcast的权限,则只有在包内的AndroidManifest.xml中 用标签声明了,拥有此权限的Context对象所发送的Broadcast才能被这个 BroadcastReceiver所接收。

1.静态注册BroadcastReceiver:

静态注册比动态注册麻烦点,先新建一个类继承BroadcastReceiver,如:

clsReceiver2.java

Android之Broadcast与BroadcastReceiver

然后到AndroidManifest.xml 添加receive标签

第一个name是类名,即你的继承BroadcastReceiver的类的名字,里面实现了BroadcastReceive的onReceive()方法,来处理你接到消息的动作。

第二个name是action的名称,即你要监听的消息名字(其它消息都会被过滤不监听)。

2.动态注册BroadcastReceiver:

主要代码部分为:

  intentFilter.addAction(String); //为BroadcastReceiver指定action,即要监听的消息名字。

  (一般:在onStart中注册,onStop中取消unregisterReceiver)

========================================================================

Broadcast:

发送广播消息,把要发送的信息和用于过滤的信息(如Action、Category)装入一个Intent对象,然后通过调用 Context.sendBroadcast()、sendOrderBroadcast()或sendStickyBroadcast()方法,把 Intent对象以广播方式发送出去。

例如:

android图片压缩终极解决方案 首先说一下论坛其他同学的压缩方法,基本上都是bitmap.compress方法,要么压缩尺寸,要么降低图片质量,这种帖子一翻一大堆。有这方面开发的同学应

Android-Universal-Image-Loader最新框架解析 Android-Universal-Image-Loader(对应版本号1.9.4为最新版)原文作者:顾学武编辑整理:快码众包目录1.个性的ImageLoader配置1.1.在哪儿配置以及如何配置2.各式

BaseAdapter初体验---(mooc) 数据适配器-BaseAdapter什么是数据适配器?-数据适配器的使用:1.降低程序耦合性2.容易扩展ListView的显示与缓存机制-需要才显示,显示完就回收到缓存eclip

标签: Android之Broadcast与BroadcastReceiver

本文链接地址:https://www.jiuchutong.com/biancheng/386777.html 转载请保留说明!

上一篇:android 常用代码(安卓通用代码)

下一篇:android图片压缩终极解决方案(android图片压缩库)

  • 销售不动产营业税纳税义务发生时间
  • 固定资产折旧直接计入成本
  • 消防管理费用收取标准
  • 什么情况需要预缴税款
  • 资产负债表应交税金负数是什么意思
  • 个税申报系统跟工资表累计扣除数不一致怎么办
  • 职工罚款收入计入什么科目
  • 综保区和自贸区的联系
  • 查账征收的个体户怎么报税
  • 车辆保险费专用发票图片
  • 固定资产大修理的标准
  • 公司亏损多久可以申请解散
  • 资产减值准备怎么转回
  • 注销时留抵税额不能退怎么做分录
  • 公司开发票要交多少钱的税?
  • 发票抄报逾期如何处罚
  • 雇主责任险能否证明劳动关系
  • 国有企业的所得税怎么算
  • 公司房产税如何计算器
  • 专票密码区出来了一点有关系吗
  • 减税必须通过开户银行吗
  • 印制宣传册
  • 应交税费属于什么费用科目
  • 关税税率表包括哪些税种
  • 总账会计就是内外账合并吗
  • 工会经费税收
  • 酒店长包房正常打几折
  • 收到广告费收入怎么做分录
  • 销售折扣单独开票
  • 增值税专用发票有几联?
  • 按简易办法征收增值税的行为有
  • 房地产项目公司是什么意思
  • 外贸企业出口退税计算
  • 总包和分包是什么关系
  • sethook.exe - sethook进程是什么文件 有何作用
  • 息税前利润和税前净利润的关系
  • 不良品返修流程
  • 美轮美奂的对象是什么
  • thinkphp3.x连接mysql数据库的方法(具体操作步骤)
  • blockdata指令怎么用
  • 有合同没有发票怎么入账
  • 即征即退实际退税额35栏可以不填吗
  • 反射怎么解释
  • discuz管理中心进不去
  • 企业应纳税所得额的计算应遵循权责发生制原则
  • 税控盘的服务费可以抵扣吗
  • 信用证保证金账户属于什么账户性质
  • 疫情期间减免的养老保险算工龄吗
  • 中级财务会计报告心得体会
  • 开外经证怎么预约办理
  • 报销运输费用
  • 一般纳税人购买汽车会计分录
  • 工程投标保证金什么时候交
  • 本年利润的会计科目代码
  • 小规模纳税人申请一般纳税人流程
  • 律师事务所优惠政策
  • 根据企业
  • 待摊费用属于流动负债吗
  • 公司委托公司收款范本
  • sqlserver复制表语句
  • mysql很卡
  • 电脑上的win8键盘怎么打开
  • win10应用商店try that again
  • tcpip. sys
  • win7怎么禁止u盘自动运行
  • windows8使用教程
  • 用360可以装win7系统吗
  • cocos2dx schedule
  • unicode 字符百科
  • 解析几何
  • 进入cmd命令
  • if条件程序
  • Linux 中的Edquota命令
  • python过程中遇到的问题
  • js null,undefined,字符串小结
  • JavaScript中void(0)的具体含义解释
  • 江西电子税务局官网
  • 税务总局转变税收征管方式
  • 营业收入是含增值税的收入吗
  • 什么是征收率什么是税率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设