我已将 Firebase 设置为向我的应用用户发送推送通知。但是,我不确定关于用户间通信的最佳做法是什么,例如聊天客户端。我应该在每次启动应用程序时获取设备令牌并将其用于发送,还是应该为双方都需要订阅的每个“聊天室”创建一个新主题?例如在接受聊天请求时。
如果第一个选项是最好的,这是如何工作的?如果在应用启动时为设备分配了新令牌,我如何确定给定 ID 指向特定设备?整个概念似乎很脆弱 - 但有人可以指导我找到最有效的解决方案吗?
我只想通过推送发送聊天消息/聊天邀请
我已将 Firebase 设置为向我的应用用户发送推送通知。但是,我不确定关于用户间通信的最佳做法是什么,例如聊天客户端。我应该在每次启动应用程序时获取设备令牌并将其用于发送,还是应该为双方都需要订阅的每个“聊天室”创建一个新主题?例如在接受聊天请求时。
如果第一个选项是最好的,这是如何工作的?如果在应用启动时为设备分配了新令牌,我如何确定给定 ID 指向特定设备?整个概念似乎很脆弱 - 但有人可以指导我找到最有效的解决方案吗?
我只想通过推送发送聊天消息/聊天邀请
根据聊天室的大小和隐私,您可以选择使用:
设备令牌不会在每次启动时更改。它是在应用程序第一次启动时创建的,在特殊情况下可以更新。当令牌更改时(同样,这种情况很少见),FirebaseInstanceIdService.onTokenRefresh()
回调被调用。
在通用聊天应用程序中,您可能希望:
更新以解决评论之一:
registration_ids
https://firebase.google.com/docs/cloud-messaging/http-server-ref#downstream-http-messages-json