首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iOS中的GCM到FCM

iOS中的GCM到FCM
EN

Stack Overflow用户
提问于 2019-02-06 06:04:35
回答 1查看 279关注 0票数 3

我使用FirebaseInstanceID框架来获取令牌。

目前的执行情况如下:

代码语言:javascript
复制
InstanceID.instanceID().token(withAuthorizedEntity: <GCM_SENDER_ID>, scope: "GCM", options: nil) { (token, error) in
}

我唯一的要求是从Firebase获得令牌,只用于身份验证。

上面的实现不需要添加GoogleService-Info.plist和任何其他框架。

问题是,Google已经反对GCM.

如果我将作用域从"GCM"更改为"FCM",它将返回一个错误1001。另外,如果我将withAuthorizedEntity从<GCM_SENDER_ID>更改为<PROJECT_ID>,则会出现错误1001。

那么,是否有任何方法,使用FCM来获取令牌?因为,我没有发送推送通知的任何其他要求。提亚

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-14 14:59:36

我认为您可以尝试使用文档以正确的方式迁移,但在本例中,您应该添加GoogleService-Info.plist和必需的框架。

根据错误代码,问题是在获取APNS令牌时会导致Firebase失败,这意味着您应该在接收到APNS令牌后设置APNS令牌以获得FCM令牌。你有两种方法可以做到这一点:

  1. Messaging.messaging().apnsToken = deviceToken内部func application(application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: NSData) {}
  2. 或者使用他们的Swizzling method

这个答案不会帮助你以你想要的方式修复它,但是如果你想尽快修复它,你可以尝试这样的选项。

希望它能以正确的方式指引你。

补充:

除非需要启用多个发件人,否则不要调用.getToken(authorizedEntity,scope)。使用instanceIDWithHandler:代替。

相似问题

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54547522

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档