这是可能的,以检查是否有广播在粘模式发送? 是否可以中止/删除?(Is this possibl

2019-07-30 19:03发布

这是可能的,以检查是否有广播在粘模式发送?

我们完全可以中止/删除粘性广播? 如果是的话,那么能不能对正常完成,排序后的广播?

Answer 1:

onReceive()您可以使用下面的调用:

isInitialStickyBroadcast() -这会告诉你,如果你正在处理被派往为“粘性”,是当前的一个当广播BroadcastReceiver被注册。

isOrderedBroadcast() -这会告诉你,如果你目前正在处理的广播发送为“有序”播出。

如果你只是想看看是否有“粘性”的广播,你可以调用

registerReceiver (BroadcastReceiver receiver, IntentFilter filter)

并供给null作为receiver参数。 这将返回任何“粘”广播没有实际注册的接收器。

您可以使用删除顽固广播:

removeStickyBroadcast(Intent intent)

但是,恕我直言,这将是适得其反。 通常“粘”广播发送到指示的东西的当前状态 。 因此,移除这将意味着,这是不可能的应用程序来确定当前状态。



文章来源: Is this possible to check if a broadcast was sent in sticky mode? Can it be aborted/removed?