Android基础广播

作者: 正阳Android | 来源:发表于2017-11-16 16:25 被阅读6次

广播如何调用,有什么方式,区别是什么?

Android广播分为两个方面:广播发送者和广播接收者,通常情况下,BroadcastReceiver指的就是广播接收者(广播接收器)。广播作为Android组件间的通信方式.

使用场景:

1.同一app内部的同一组件内的消息通信(单个或多个线程之间);

2.同一app内部的不同组件之间的消息通信(单个进程);

3.同一app具有多个进程的不同组件之间的消息通信;(正是因为如此,所以和U3d那边可以使用广播的形式完成了通信)

4.不同app之间的组件之间消息通信;

5.Android系统在特定情况下与App之间的消息通信。

广播的注册:

1.静态注册:定义一个广播接收器继承BroadcastReceiver,重写其onReceive方法,在清单文件注册广播(常驻型广播,即便是应用程序关闭,如有广播,广播接收器一样是可以接收到)

2.动态注册和取消注册;(非常驻型广播,应用程序关闭,广播也就没有了)

定义一个广播接收器继承BroadcastReceiver,在代码中通过registerReceiver()注册.当程序关闭或者界面销毁的时候i调用unregisterReceiver()进行销毁。

发送的广播可以分为有序广播和无序广播;

无序广播:发送方发出后,几乎同时到达多个广播接收者处,某个接收者不能接收到广播后进行一番处理后传给下一个接收者,并且无法终止广播继续传播;Context.sendBroadcast(intent);

有序广播:广播接收者需要提前设置优先级,优先级高的先接收到广播,优先级数值为-1000~1000,在AndroidManifest.xml的设置;比如存在3个广播接收者A、B、C,优先级A>B>C,因此A最先收到广播,当A收到广播后,可以向广播中添加一些数据给下一个接收者(intent.putExtra()),或者终止广播(abortBroadcast());Context.sendOrderedBroadcast(intent);

简单理解的话可以认为:有序广播,优先级高的将先接收到广播,并且可以修改和终止广播;无序广播,所有的都可以接收到.

相关文章

  • 小米4轮面试总结

    1.Android基础,四大组件,广播优先级,有序无序广播,静态动态广播? 2.Android的View绘制流程?...

  • Android基础广播

    广播如何调用,有什么方式,区别是什么? Android广播分为两个方面:广播发送者和广播接收者,通常情况下,Bro...

  • Android广播基础概念

    定义 广播:是一个全局的监听器 分为两个角色:广播发送者、广播接收者 作用 监听/接收应用App发出的广播消息,并...

  • Android广播

    参考:Android总结篇系列:Android广播机制Android广播机制 一. 广播 1. 广播是什么? 广播...

  • Android工程师成长之路

    Android 基础 1.Fragment2.Activity3.Service4.广播5.Binder 结合 A...

  • Android实习生 —— 四大组件之Broadcast Rec

    目录 前言 基础知识。 1.Android广播分为两个方面:广播发送者和广播接收者,通常情况下,Broadcast...

  • Android开发基础-广播机制

    对《第一行代码》第五章知识所作的总结,虽然内容都很简单,但是量挺大的,脑子顶不住了,写个博客帮忙记录一下 标准广播...

  • Android笔记汇总目录

    一、Android基础 Broadcast Receiver 广播的最佳实践——实现强制下线功能 数据库 实战Li...

  • Android笔记——BroadcastReceiver

    1.0Android中的广播类型 Android中的广播主要可以分为两种类型:标准广播和有序广播。 标准广播(no...

  • android知识点

    一、Android 基础与底层机制 数据库的操作类型有哪些,如何导入外部数据库? 是否使用过本地广播,和全局广播有...

网友评论

    本文标题:Android基础广播

    本文链接:https://www.haomeiwen.com/subject/yqzlvxtx.html