我有一个使用Firebase身份验证的应用程序,该应用程序通过电话短信验证和验证码(没有APNS)
如果您使用的是iOS 11.4.1,则该应用程序可以在身份验证过程中正常运行
但是,如果您使用的是iOS 12,则身份验证过程将导致无效的令牌消息
错误域= FIRAuthErrorDomain代码= 17048“无效令牌。” UserInfo = {NSLocalizedDescription =无效的令牌。,error_name = INVALID_APP_CREDENTIAL}
当前使用最新的firebase ios SDK 5.9.0 最新版本的xcode iOS 12 最新的Mac OS Mojave 10.14
我在2018年6月(三个月前)看到了一个较早的版本,但不确定是否与我们的项目有关 https://github.com/firebase/firebase-js-sdk/issues/916
https://github.com/firebase/firebase-ios-sdk
是否有解决方案,或者这是Firebase iOS SDK错误?
答案 0 :(得分:2)
在Firebase中将.p12文件用于APN时似乎出现问题。我遇到了同样的问题,并解决了立即为.p8更改.p12证书的问题,我的应用收到了短信。
您可以在Apple开发者帐户的“密钥”部分中生成.p8文件,然后下载该文件并将其保存在安全的地方。此新密钥还会生成Firebase设置中需要的 KeyId 。最后,您需要与您的Apple Developer帐户相对应的 TeamId ,您可以在配置文件设置中找到它。
希望这可以为您提供帮助。
答案 1 :(得分:0)
我还使用了您在问题中描述的相同配置,并且我正在使用此Firebase方法,它可以完美运行。这样您就可以检查您使用的凭据。还要检查firebase文档。
Auth.auth().signIn(withEmail: email, password: password) { (result, error) in
if error == nil {
guard let user = result?.user else {
return
}
// do your stuff
}
}
答案 2 :(得分:0)