Bha*_*tta 2 android google-cloud-functions firebase-cloud-messaging
在 Firebase 中,如果用户设备令牌存储在 Firebase 数据库中,则云函数可以向任何用户发送推送通知。同样,如果用户订阅了一个主题,那么另一个用户也可以向该用户发送通知。现在的问题是,在什么情况下我们应该使用主题消息传递,以及在什么情况下我们应该使用云功能来发送通知。如果任何用户订阅了他的唯一 ID(由 Firebase 提供),那么任何人都可以通过将主题消息发布到该唯一 ID 来向他发送主题消息。这是一个好方法还是我们应该使用云功能使用设备令牌向该用户发送推送通知。订阅他自己的唯一ID以获取通知是否是个好主意。请帮我解决我的问题。主题消息可以免费使用吗?
Firebase Cloud Messaging 完全免费使用,包括主题的使用。
使用主题时,您将发送有关主题的消息与安装应用程序订阅该主题的事实分开。这意味着您可以稍后向主题添加订阅者,而无需编写额外的代码甚至数据(因为订阅主题的令牌列表由 FCM 本身处理)。
另一方面:主题是 public。一旦有人知道主题 ID,他们就可以订阅该主题,并接收您发送到该主题的任何消息。
使用主题的替代方法是将消息直接发送到FCM 实例 ID 令牌。在这种情况下,您将在自己的某个地方保留一个令牌列表,并确定要将消息传递到哪些令牌。在这种情况下,您完全控制谁接收消息,但必须维护自己的令牌列表,以及什么令牌接收什么消息的映射。
请注意,可以从任何受信任的环境(例如您的开发机器、您控制的服务器或 Cloud Functions)发送消息(无论是主题还是令牌)。并且无法从客户端代码(安全地)发送消息(无论是主题还是令牌)。
| 归档时间: |
|
| 查看次数: |
1385 次 |
| 最近记录: |