有关Google Cloud Messaging的最大主题数

我想避免在应用程序级别管理设备令牌的复杂性

  1. 一位用户在iOS和Android上使用多个设备
  2. 多个用户订阅了一个应用程序组

将#1和#2视为关于GCM的主题显然是一个简单的解决方案。 因此,我只需在发送通知时处理我的Application UserIds和GroupIds。

1)当设备注册时(iOS / Android),我只是将设备订阅到主题[“USER_A”,“GROUP_A”,“GROUP_B”]

2)发送通知时,只需发送主题即可。

但是,这意味着,主题数=用户+组。

100万用户+ 500K组= GCM上的150万个主题

我的问题是……

  1. GCM的主题数量是否有限制?
  2. 有没有更好的方法来避免管理设备订阅,而不必在传递消息时处理其复杂性。

对于#1:

不。 根据2015年12月的博客 :

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

据我所知,在主题数量方面仍然没有任何变化。

对于#2

我认为这很大程度上取决于你的偏好。 对于#1中的用例,我认为可以使用Device Group Messaging。 但是,既然你的目标是避免过多的复杂化,我认为你使用Topic Messaging所做的就是它。 我实际上发现这篇post有点讨论了两者之间的用法,如果你愿意的话,这些评论非常具有启发性。 :d

干杯! 🙂

GCM已删除主题和订阅的限制FCM也支持相同的检查: https : //firebase.google.com/docs/cloud-messaging/android/topic-messaging