当尝试将Firebase Phone Auth集成到iOS应用程序中时,我不断收到此错误消息:
如果禁用了应用程序委托模糊处理,则需要将UIApplicationDelegate收到的远程通知转发到FIRAuth的canHandleNotificaton:方法。
但是根据https://firebase.google.com/docs/auth/ios/phone-auth。
仅当禁用应用程序委托摇动时才需要这样做。它还说:
如果您不希望使用Swizzling,可以通过将标志
FirebaseAppDelegateProxyEnabled
添加到应用程序的Info.plist
文件并将其设置为NO
来禁用它。
在我的项目中,我没有将FirebaseAppDelegateProxyEnabled设置为NO。那么为什么会出现此消息?
此外,根据该Firebase链接
Auth.auth().setAPNSToken...
不需要。但是,如果不手动设置此设置,则不会发送任何短信。
现在...当我手动将其设置为:
Auth.auth().setAPNSToken(deviceToken, type: .prod)
对于我的发行版本,将出现“令牌不匹配”错误。哪个迫使我使用:
Auth.auth().setAPNSToken(deviceToken, type: .unknown)
这一切都是不必要的,因为我没有禁用应用程序委托的混乱...但是...
那么,实际上是怎么回事?