我对Android中不同类型的发送广播的文档感到困惑。例如,有sendStickyBroadcast()
,sendBroadcast()
,sendOrderedBroadcast()
和sendStickyOrderedBroadcast()
。
粘性,普通和有序广播有什么区别?
答案 0 :(得分:53)
您可以将粘性广播与便利贴进行比较。有人发布它,你可以在你经过/你的申请开始时阅读 - 无论何时发布。
有序广播就像传递一个音符 - 它从人/应用程序传递给人/应用程序。在链中的任何地方,接收者可以选择取消广播,防止链的其余部分看到它。
普通广播......好吧,只发给每个允许的人。注册听取它。
广播的变体只允许在正在运行的应用程序中注册的接收器收听它们 - 即AndroidManifest.xml中的接收器将不触发这些意图
关于sendStickyBroadcast的更新:
此方法在API级别21中已弃用。粘性广播应该 不被使用。它们没有安全性(任何人都可以访问它们),没有 保护(任何人都可以修改它们)以及许多其他问题。该 推荐的模式是使用非粘性广播来报告 一些东西已经改变,另一种机制让应用程序检索 当需要时的当前值。