由于不推荐使用GCM,我们正在积极开发推送通知SDK,并将其迁移到FCM系统。
SDK gradle文件包括 firebase-messaging 软件包,SDK可以正确处理所有令牌注册和消息接收操作。 SDK从instanceId.getToken(senderid, "fcm")
方法获取令牌并将其成功发送到云端。
在测试多个发件人ID案例时,会出现问题。如果客户使用其自己的Firebase实现(17.1.0+)和默认发件人ID(从google-services.json获取),则有趣的是,onNewToken方法将为SDK和客户发件人ID触发两次。我们希望仅获得客户发件人ID(默认值)。
我们如何理解令牌的来源?来自哪个发件人ID?
(我们也与Google联系,但他们无法提供帮助)
答案 0 :(得分:0)
我通常的做法是根据需要为每个发件人致电getToken(senderid, scope)
。这样,您一定会获得预期的令牌。
但是,如果目标是获取默认值,则无需担心。 onNewToken()
will only return the token for the default sender。