【问题标题】:FCM topic limits and expiration/invalidation of old unused topics?FCM 主题限制和旧未使用主题的到期/失效?
【发布时间】:2019-04-16 10:48:01
【问题描述】:

我使用 FCM 主题已有一段时间了,但文档非常有限,大多数搜索都指向相同的页面,所以我在这里问,希望有人在该主题上有足够的经验来回答我的问题。

我想知道是否对允许的主题数量有限制,以及不再使用的主题会怎样?我的意思是,一个主题什么时候会失效?

我遇到了一些问题,即取消订阅某个主题似乎不起作用,即使我得到了肯定的回复或其他时候通知已发送两次。

为了解决这个问题,我目前正在创建一个新命令,但与以前不同的是,每次运行命令时,我都会为一个唯一主题订阅令牌,发送通知,取消订阅令牌,然后该主题将永远不会被使用再次。这是我更好地控制哪些用户订阅某些主题的一种方式,因为我知道 FCM 对此没有任何帮助。

所以我的问题是,我应该在之后再次取消订阅所有代币,让 FCM 知道它不再使用,还是这样做毫无意义? (以防他们进行了某种清理)

希望有人能指引我正确的方向。

【问题讨论】:

    标签: firebase push-notification firebase-cloud-messaging push


    【解决方案1】:

    我想知道允许的主题数量是否有限制...

    No limit.

    ...不再使用的主题会发生什么?我的意思是,一个话题什么时候会失效?

    A topic is created when there is at least 1 subscriber and it also gets automatically deleted when there are no more subscribers.

    为了解决这个问题,我目前正在创建一个新命令,但与以前不同的是,每次运行命令时,我都会为一个唯一主题订阅令牌,发送通知,取消订阅令牌,然后该主题将永远不会再被使用。这是我更好地控制哪些用户订阅某些主题的一种方式,因为我知道 FCM 对此没有任何帮助。

    这个用例本身似乎没有错。这有点不合常规(尽管我很确定我之前曾提出过类似的建议)。

    目前,在 FCM v1 中,不再建议使用 registration_ids 参数(用于发送到多个令牌 -- 每个请求 1000 个)。 FCM 团队似乎正在朝着使用主题发送到多个代币的方向发展。话虽如此,恕我直言,我认为用例是有效的。

    【讨论】:

    • 感谢您澄清这一点。我已经把它放好,它可以工作,只是想确认我所做的并没有完全错误。
    • 您是否遇到过并非所有订阅者都能收到通知的问题?我订阅了一堆,发送通知并立即再次取消订阅,但我注意到有时并非每个人都收到通知。我假设 Firebase 有一些东西可以查看是否正在添加订阅,然后在发送推送之前等待这些完成,但情况似乎并非如此。我想我只需要等待 5-10 秒然后发送。
    • 曾出现过用户收不到消息的情况。但通常情况下,这是对阻止交付的设备的限制。所以我不能肯定这已经结束了 FCM。
    猜你喜欢
    • 2019-11-17
    • 1970-01-01
    • 2017-06-27
    • 1970-01-01
    • 2018-06-17
    • 2021-02-15
    • 2017-11-15
    • 2017-09-07
    • 1970-01-01
    相关资源
    最近更新 更多