FCM:多个注册ID限制的消息?

时间:2016-09-07 16:33:29

标签: firebase google-cloud-messaging firebase-cloud-messaging

根据这句话,我发现:

  
      
  • registration_ids - 类型字符串数组 - (可选)[消息的收件人]   多个注册令牌,最小1个最大1000个。
  •   

这是我可以发送单个消息的设备令牌的实际限制吗?对主题的消息是否有相同的限制?

前:

{
  "to": [reg_token_01, reg_token_02, ..., reg_token_1000],
  "priority": "high",
  "data": {
    "title": "Hi Peeps!",
    "message": "This is a special message for only for you...  More details are available..."
  }
}

一如既往,感谢信息和方向!

2 个答案:

答案 0 :(得分:23)

更新:对于 v1 ,似乎不再支持registration_ids。强烈建议使用主题。

由于FCM基于GCM核心,因此使用registration_ids参数时可以发送的最大注册令牌数为1000.我很确定您确实在官方文档中看到了这一点

因此,如果您仍打算使用registration_ids参数,但需要将其发送到1000以上,则可以按照@Eran在其答案here中所说的内容进行操作:

  

如果您需要将相同的消息发送到1000多个注册ID,您只需将发送过程拆分为1000个注册ID组。每个组都将在单独的请求中发送给GCM服务器。

但是,谈到主题,没有限制。曾经有过,但多年前就被废弃了。我之前已经提到过我以前的答案:

不。根据2015年12月的blog

  

我们现在很高兴地宣布我们允许您的应用无限制免费主题。这意味着应用程序开发人员可以在每个主题中放置无限数量的设备,并创建无限数量的主题。

不。看到FCM以GCM为核心,任何应用程序的主题数量都没有限制。曾经有一百万的限制,但它已被删除。您可以参考此Google Developers Blog

此外,在FCM中创建主题时,根据post,它似乎需要一天时间才能使用。

答案 1 :(得分:1)

显然,有旧版API可以实现它。在这里Send FCM message to multiple registration tokens

方法sendToDevice接受注册令牌的数组