FCM |多个发件人ID

时间:2018-04-24 11:52:08

标签: android firebase push-notification google-cloud-messaging firebase-cloud-messaging

从GCM迁移到FCM。

在GCM中,我们可以为多个发送者ID调用getToken()方法,如下所示:

String senderIds = "112233445566,889922338899";
String token = instanceID.getToken(senderIds,
                        GoogleCloudMessaging.INSTANCE_ID_SCOPE, null);

Q1 - 进入FCM后,是否保持相同或者我需要进行任何更改以获取多个发件人ID的令牌?

this引用,我知道我可以为每个发件人ID调用getToken(“senderIds1”,“FCM”),但我希望在迁移到FCM时进行最少的代码更改。

Q2 以下是否适用于FCM(与GCM相同)或我必须调用 getToken(“senderIds1”,“FCM”); getToken(“senderIds2”,“FCM”)?

getToken("senderIds1, senderIds2", "FCM") 

1 个答案:

答案 0 :(得分:5)

查看此功能 - 扫描文档和查看旧帖子 - 我决定更新此答案。由于行为本身在FCM正式发布之前就已经存在,因此很多事情已经在服务中更新(有些已经弃用)(在引擎盖下)。这方面的一个例子是回到C2DM到GCM的迁移,即tokens weren't interoperable was stated的部分。

通过传递逗号分隔的senderIds来使用getToken(),因为它没有记录或在任何官方FCM文档或声明中被建议/提及,最好避免使用它们,而是继续使用官方程序 - 为每个 发件人使用getToken("senderId", "scope") ,并根据需要维护每个令牌。

通过传递以逗号分隔的senderIds来选择仍然使用getToken()可能会在将来产生意外行为,因此我强烈建议开发人员在重复的帖子中继续使用建议的过程。