位置: 编程技术 - 正文

安卓广播(安卓广播的作用)

编辑:rootadmin

推荐整理分享安卓广播(安卓广播的作用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:安卓广播注册方式,安卓广播发送和接收,安卓广播机制,安卓广播注册方式,安卓广播机制,安卓广播机制,安卓广播接收器,安卓广播接收器,内容如对您有帮助,希望把文章链接给更多的朋友!

转载请注明出处:

广播是一种广泛运用的在应用程序之间传输信息的机制 。而 BroadcastReceiver 是对发送出来的广播进行过滤接收并响应的一类组件;BroadcastReceiver 自身并不实现图形用户界面,但是当它收到某个通知后, BroadcastReceiver 可以启动Activity 作为响应,或者通过 NotificationMananger 提醒用户,或者启动 Service 等等。

broadcastReceiver属性:

android:enabled="true",只有application和自身的这两个属性都为true,才可以被实例化。

android:exported="true",默认&#;依据是否有intent filters,有就为true,没有为false。

android:permissino,使用name属性指定权限

权限在manifesst中使用permission声明。例如:(权限声明部分摘录自: android:description="string resource" android:icon="drawable resource" android:label="string resource" android:name="string" android:permissionGroup="string" android:protectionLevel=["normal" | "dangerous" | "signature" | "signatureOrSystem"] />android:description :对权限的描述,一般是两句话,第一句话描述这个权限所针对的操作,第二句话告诉用户授予app这个权限会带来的后果 android:label: 对权限的一个简短描述 android:name :权限的唯一标识,一般都是使用 报名加权限名 android:permissionGroup: 权限所属权限组的名称 android:protectionLevel: 权限的等级, normal 是最低的等级,声明次权限的app,系统会默认授予次权限,不会提示用户 dangerous 权限对应的操作有安全风险,系统在安装声明此类权限的app时会提示用户 signature 权限表明的操作只针对使用同一个证书签名的app开放 signatureOrSystem 与signature类&#;,只是增加了rom中自带的app的声明 android:name 属性是必须的,其他的可选,未写的系统会指定默认&#;

两种注册方法:

系统注册:

[html] view plaincopyprint?< receiver android:name = ".MyBroadcastReceiver" > < intent-filter android:priority = "" > < action android:name = " android.provider.Telephony.SMS_RECEIVED" /> </ intent-filter > </ receiver >

代码注册:

[java] view plaincopyprint?IntentFilter filterB = new IntentFilter(); filterB.addAction("sendMyBroadcastReceiverB"); MyBroadcastReceiverB myBroadcastReceiverB = new MyBroadcastReceiverB(); this.registerReceiver(myBroadcastReceiverB, filterB);

andorid broadcast类型:

sendBroadcast:发送普通广播,广播发送后所有接收者以不同的顺序运行,通常在同一时刻。

在有些情况下,例如那些需要创建一个进程的广播,只有一个会被执行避免系统因为创建进程负载。

安卓广播(安卓广播的作用)

sendOrderedBroadcast:一次只有一个广播在执行,可以给下一个广播提供一个结果或者终止广播继续传递。可以通过android:priority控制广播的顺序,相同优先级的广播的执行顺序不确定。

sendStickyBroadcast:粘性广播,发出后系统会保留最后一次发送的intnet,在有广播注册后可以立即收到广播,且会一直存在。(退出发送广播的应用也会存在)

1):相同的intent,系统只会保留最后一次

2):不同的intent,可以一起存在。

安全:

1)确保intent actions和其它的条件是唯一的,否则会冲突

2)使用registerReceiver(BroadcastReceiver, IntentFilter),任何其它应用都可以给它发送广播

3)当你在manifest中注册广播,其它任何应用都可以给它发送广播,使用android:exported="false"阻止。

4)sendBroadcast(Intent),任何其它应用都可以收到广播,可以通过权限控制。从ICE_CREAM_SANDWICH开始,可以设置Intent.setPackage发给一个应用。

使用LocalBroadcastManager不会发生上述问题,因为他不会将intent广播出当前进程

可以使用sendBroadcast(Intent, String)或者sendOrderedBroadcast(Intent, String, BroadcastReceiver, android.os.Handler, int, String, Bundle)指定权限,只有那么在manifest中注册了permission的receiver可以收到广播。

广播生命周期:

一个正在执行广播的onRecieve的方法的进程会被认为是前台进程。一旦从onReveieve返回,就和其他运行在进程中的组件优先级相同。

onReceieve方法:

通常运行在UI线程,除非指定registerReceiver(BroadcastReceiver, IntentFilter, String, android.os.Handler)是它运行在其它线程。当广播运行在主线程的时候,不能在onReceieve方法执行超过s的操作。也不能在里面弹出对话框。

应用场景暂略。

android之Java+html+javascript混合开发 android开发,除了使用原生态的开发方式之外,还可以使用java+html+javascript混合开发的方式来开发,这样可以节省大量的开发时间,同时还可以使不同设

Android开发--仿腾讯新闻客户端(1)内容列表界面 好久没有更新博客了。最近由于工作比较忙,再加上忙于社交。导致一直没好好静下来研究Android。这次给大家分享仿腾讯新闻内容列表界面。其实,这

Android之framework修改底部导航栏NavigationBar动态显示和隐藏 大家都知道,Android从3.0版本开始就加入了NavigationBar,主要是为那些没有实体按键的设备提供虚拟按键,但是,它始终固定在底部,占用dp的像素高度

标签: 安卓广播的作用

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

上一篇:android Smali静态分析(一)(安卓静态库)

下一篇:android之Java+html+javascript混合开发

  • 未办理税务登记的个体户怎么注销营业执照
  • 企业计提增值税 附加税
  • 企业所得税是什么税
  • 建筑公司跨区域迁入
  • 金税四期记账报税流程
  • 个税所得税清缴
  • 冲红的发票要拿回来吗
  • 合并后少数股东权益的处理
  • 代采账务处理
  • 将资产货物用于业务宣传增值税
  • 工程维修费用怎么入账
  • 暂估应付账款借方余额
  • 抄税和上报汇总一样吗
  • 减免税款怎么入账
  • 北京建筑施工企业排名
  • 技术服务合同增值税税率3%
  • 2021年新疆果业灰枣销售情况
  • 总公司集中支付说明
  • 房屋的契税印花税的会计分录
  • 原材料损失计入
  • 公司法人如何从公司提钱
  • 个体户营业收入超过500万
  • 旅游业企业所得税要求
  • 出口转内销的销项税怎么计算
  • wim文件用什么软件打开
  • 应收账款坏账收回影响利润么
  • 2021工资扣税标准公式
  • 设置系统自动更新一般通过什么窗口
  • kb4586853更新
  • php字符串函数大全
  • 怎么做年终结算工资
  • 总公司欠分公司钱不偿还了怎么做账
  • 工业企业成本核算方法
  • 利润总额为负还交所得税吗
  • 日落后的托莱多全景,西班牙 (© Frank Fischbach/Alamy)
  • t typescript
  • 注册公司时的注册资金
  • div css页面布局
  • 对企业采取以旧换新方式销售的应税产品
  • 投资性房地产按公允价值计量
  • 主营业务收入用三栏式吗
  • 工程代建的性质
  • 普通发票作废要做账吗
  • 暂估入库算材料成本差异吗
  • SQLite3中的日期时间函数使用小结
  • 工资只计提没有发放需要申报个税吗
  • 公司给部分员工长期停工怎么办
  • 股权激励和期权激励
  • 报销单的经办人是什么意思
  • winXP系统安装SQLServer2005开发版具体过程与注意问题
  • 人力资源劳务外包需要什么资质证书
  • 工作失误扣工资的规定是什么
  • 信息技术服务费属于什么费用
  • 公司租用员工车辆维修费能报销吗
  • 资产负债表中应付职工薪酬是负数
  • 工资可以当月发放当月计提吗
  • 收到一笔财政局的付款
  • CentOS6.7 mysql5.6.33修改数据文件位置的方法
  • ie8-ie11
  • linux支持多种平台
  • centos安装软件教程
  • virtualbox虚拟机
  • winxp如何删除网卡驱动
  • steam怎么sl
  • 怎么更改window系统字体
  • saimon.exe - saimon进程有什么用 有何作用
  • win8任务管理器打不开怎么办
  • win10怎么旋转屏幕
  • win10锁屏界面的搜索怎么关
  • 编辑器ui
  • jquery的实现原理
  • bootstrap怎么用
  • Error: String types not allowed (at 'layout_gravity' with value 'bottom/center_horizontal').
  • javascript语法术语
  • activity间数据传递
  • 怎样下载金税盘
  • 税务划分行业
  • 西安市交房要交多少钱
  • 江西省医保卡缴费
  • 我国国家宪法日是每年的十二月几日
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设