是否可以检查广播是否以粘性模式发送?
我们可以完全中止/删除粘性广播吗?如果是的话,那么可以对正常播放和有序广播进行播放吗?
解决方法
在onReceive()中,您可以使用以下调用:
isInitialStickybroadcast() – 这将告诉您当前正在处理的广播是否发送为“sticky”,并且是broadcastReceiver注册时的当前播放.
isOrderedbroadcast() – 这将告诉您您当前处理的广播是否作为“有序”广播发送.
如果你只是想看看是否有一个“粘性”广播,你可以打电话
registerReceiver (broadcastReceiver receiver,IntentFilter filter)
并提供null作为接收器参数.这将返回任何“粘性”广播,而不实际注册接收器.
您可以使用以下方式删除粘性广播:
removeStickybroadcast(Intent intent)
但是,IMHO将会产生反效果.通常发送“粘性”广播以指示某事物的当前状态.因此,删除它将意味着应用程序不可能确定当前状态.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。