Firebase:登录错误

时间:2016-05-25 15:17:22

标签: ios error-handling firebase firebase-authentication

编辑:我在Facebook登录时找到a similar question specific。我正在使用电子邮件身份验证,但问题/解决方案可能是相同的。

我正在使用Firebase演示示例类 SignInViewController ,它在演示项目中运行良好。但是,当我尝试将它集成到我自己的项目中时,它会给我以下错误:

  

UserInfo = {NSUnderlyingError = 0x14704d4b0 {错误   Domain = FIRAuthInternalErrorDomain Code = 3"(null)"   UserInfo = {FIRAuthErrorUserInfoDeserializedResponseKey = {type = immutable dict,count = 3,entries   => 0:{contents =" message"} = {contents =" INVALID_EMAIL"} 1:   errors = {type = immutable,count =   1,values =(0:{type =   immutable dict,count = 3,entries => 0:reason =无效1:   message = {contents =   " INVALID_EMAIL"} 2:domain = global}

     

)} 2:code = {value =   +400,type = kCFNumberSInt64Type}}}},error_name = ERROR_INTERNAL_ERROR,NSLocalizedDescription =内部   发生错误,打印并检查错误详细信息以获取更多信息   信息。}

我在应用的控制台上启用了电子邮件登录方法。

知道为什么会这样吗?

1 个答案:

答案 0 :(得分:0)

检查dev.facebook中的设置"使用Facebook登录" - > "设置"并将正确的OAuth重定向URI从Firebase粘贴到 "有效的OAuth重定向URI"领域。接下来启用您的Facebook应用程序(应为绿色)。在代码粘贴中:

    func loginButton(loginButton: FBSDKLoginButton!, didCompleteWithResult result: FBSDKLoginManagerLoginResult!, error: NSError!) {
    if error != nil {
        self.showAlert(msg: AlertMessages.facebookLoginError)
        return
    }
    if !result.isCancelled {

        let token = FBSDKAccessToken.currentAccessToken().tokenString
        let credential = FIRFacebookAuthProvider.credentialWithAccessToken(token)
        FIRAuth.auth()?.signInWithCredential(credential) { (user, error) in
            if let error = error {
                UserAuthManager.sharedInstance.logoutFromFacebook()

                if let errCode = FIRAuthErrorCode(rawValue: error.code) { // error
                }
                return
            }
            self.userDidSignedIn()
            //Logged with FB!
        }
    }
}

记得在你的控制器中设置FBSDKLoginButtonDelegate。