问题描述
我目前正在我的应用程序中实施 Google Cloud Messaging。 基本上我的应用程序有类别,我需要通知我的用户这些类别中的重复事件。
我决定使用 GCM 主题作为通知所有订阅特定类别的用户的简单方法(我将有大约 200-300 个主题)。
我的问题是:由于我不打算通知单个用户,而是所有订阅特定主题的用户,因此在我的服务器上收集注册令牌是否有意义? 将下游消息发送到主题不需要这些 id。
我目前有大约 20 000 个用户
发送到 GCM Http 连接服务器的消息
{
"to": "/topics/category1",
"data": {
"message": "Hello subscribers of category1 !",
}
}
谢谢
1楼
因为这不是最佳实践,但从技术上讲,如果您只想使用主题消息传递,则无需在您的服务器上存储令牌。
您应该注意以下几点:
- 您不能再向特定用户发送推送通知。
-
您必须小心处理
onTokenRefresh()并且onTokenRefresh()获得新令牌时都会为所有所需主题注册用户agian 。 - 由于主题消息是 GCM 上的一项新功能,一些使用旧版 Google Play 服务的用户可能无法订阅主题。 请参阅。
- 每个主题都有最大注册用户数限制(每个主题 100 万用户)