8

我们的目标是从我们的后端向设备组发送通知,并且只有从服务器端才能知道哪个设备应该接收通知。

我们已经对 AppCenter 进行了一些尝试,因为我们主要使用 Xamarin iOS/Android/Forms,但现在我们怀疑直接使用 Firebase API 可能更好,因为它更广泛、更强大。

我看到新版本的 API(HTTP V1)无法向令牌列表发送通知,该功能在旧 API 中可用registration_ids参数(https://firebase.google.com/docs/cloud-messaging /发送消息)。

设备组名称(仅限旧协议)

我不能使用主题,因为何时发送通信是服务器的责任,为通知准备“邮件列表”。

我正在考虑使用设备群消息(https://firebase.google.com/docs/cloud-messaging/android/device-group),但这些是旧 api 的一部分,我不确定它是否有意义/可以将它们与新版本的 API 一起使用。

是否可以选择发送一批 100-200-500 个推送通知,每个推送通知只发送一个令牌?理论上,可以发送的通知没有限制,但我担心发送太多通知可能会被禁止。

使用旧版 API 会更好吗?AppCenter (Microsoft) 也使用旧版 API,这很明显是因为设置的工作方式,并且因为从 AppCenter 的控制台可以将通知发送到令牌列表,而 Firebase 控制台上的功能不可用。

另一个人刚刚问了类似的问题,但答案是使用主题(如何一次为所有用户发送 Firebase 通知?)。

4

2 回答 2

6

从我的回答中的评论中的链接到这里。重申一下我的回复,当使用 v1 向多个令牌发送消息时,现在建议的方法是使用主题消息传递,因为registration_ids不支持。

使用旧版 API 会更好吗?

v1 被描述为更安全、跨平台、面向未来的向 FCM 客户端发送消息的方式。更安全,因为它使用 OAuth2 安全模型。

但是,如果您的用例更适合使用旧版 API,那么我建议您继续使用它。

于 2018-03-10T04:02:44.460 回答
4

如果您想继续使用多播功能,此页面建议您应该继续使用旧版 API:https ://firebase.google.com/docs/cloud-messaging/migrate-v1

但是,任何使用设备组消息或多播消息的应用程序可能更愿意等待 API 的未来版本。HTTP v1 不支持旧 API 的这些功能。

于 2018-08-07T18:27:22.757 回答