gpt4 book ai didi

android - 有没有办法判断是否收到了 LocalBroadcastManager 广播?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:48:54 24 4
gpt4 key购买 nike

有没有办法判断是否收到了 LocalBroadcastManager 广播?或者正在被倾听?

基本上我有一个 IntentService 监听谷歌云消息。当它收到时,我需要显示通知或提醒我的主要服务有一条新消息——关键是我不想两者都想要!所以我需要知道消息是否由我的主要服务处理...

很明显,它可以通过 sendOrderedBroadcast 和 BroadcastReceiver 来完成,但对于我简单的私有(private)进程内需求来说,这似乎有些过分了。

最佳答案

Is there a way to tell if LocalBroadcastManager broadcasts were received? Or are being listened to?

sendBroadcast() 如果有 1+ 个接收者则返回 true,否则返回 false。这没有记录,但这是基于当前的实现。我提交了 an issue to get that documented .

因此,您的 IntentService 可以使用 sendBroadcast() 尝试向正在运行的 Service 发送消息(如果存在)。如果是,sendBroadcast() 应该返回 true,并且 IntentService 知道应该在那里处理消息。如果 sendBroadcast() 返回 false,您可以引发 Notification

关于android - 有没有办法判断是否收到了 LocalBroadcastManager 广播?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18558979/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com