【发布时间】:2017-02-15 07:54:59
【问题描述】:
我们的设计方法是为每个注册用户创建一个主题。
- 创建新用户
- 使用生成的令牌将其保存到我们的数据库中
- 当用户在android上登录时订阅
/topics/{user-token}或 ios 设备。
因此,如果用户拥有多个设备,并且如果我们想要发送特定于用户的通知,我们只需将其发送到 /topics/{user-token},以便所有设备都能接收到。
我们还没有遇到少数用户的任何问题,但这对于 Firebase 的限制是否可以,这是一个好方法吗?
【问题讨论】:
-
听起来不错。为什么你要为 uid 或 userId 命名为“user-token”,就像 Google 传道者那样?
-
如果用例是针对具有多个设备的单个用户,为什么不使用Device Group Messaging?
-
@AL。你是对的,我错过了,但如果我们使用它,我们必须管理组列表,比如如果有人从 android 设备注销,我已经向我的服务器发送了一个请求,删除它的 registration_id 等。但是如果我使用 @ 987654324@,我只是在客户端取消订阅。如果对firebase没问题,我会选择主题。不过谢谢你的建议。
-
主题是公开的。任何用户(即使来自不同的应用程序)都可以订阅 /topics/{user-token} 并接收这些消息。如果这对您的应用程序没问题,那么您很好。但请记住,发送到主题的消息基本上是公开的。
-
正确。但是,如果另一个开发人员可以找到它,那么您就完蛋了,因为您无法更改 guid,而且您甚至都不知道其他人正在接收您的消息副本。发送到特定令牌更安全。您可以根据需要选择安全级别。
标签: android ios firebase firebase-cloud-messaging