FIRMessaging使用另一个FIRApp

时间:2016-11-30 18:09:32

标签: ios swift firebase firebase-cloud-messaging

我正在使用Firebase Messaging为我的内部项目开发Pod。我想将FIRMessaging和FIRInstanceID与另一个FIRApp一起使用,就像我可以使用FIRDatabase或FIRAuth一样,例如:

FIRApp.configure(withName: "Library", options: appOptions!)
var auth = FIRAuth(app: FIRApp.init(named: "Library")!)
var db = FIRDatabase.database(app: FIRApp.init(named: "Library")!)

有可能吗?我该如何实现呢?

1 个答案:

答案 0 :(得分:0)

是的,您可以将FCM用于默认项目以外的项目。 FCM根据项目的发件人ID生成令牌。因此,如果要生成与默认项目以外的项目相对应的IID令牌,则需要使用tokenWithAuthorizedEntity函数生成令牌。

请注意,您必须禁用调配,因为打开调配时将使用默认项目。

你的流程应该是这样的:

  • 禁用Swizzling
  • 注册远程通知
  • 检索APNs令牌,并调用setApnsToken
  • 使用tokenWithAuthorizedEntity生成令牌
  • 从具有tokenWithAuthorizedEntity中使用的发件人ID的项目发送邮件