swift - FirebaseAuth 未通过 Google 身份验证创建新用户 - Swift

标签 swift firebase firebase-authentication google-authentication

我正在使用 Google 身份验证对 Firebase 上的用户进行身份验证。代码运行没有错误,但是,我在 Firebase 控制台的“身份验证”选项卡下没有看到任何经过身份验证的用户。根据分析,存在用户事件,但没有任何使用 Google 登录的用户的记录。

 func sign(_signIn: GIDSignIn!, didSignInfor user: GIDGoogleUser!, withError error: Error!){
    if let err = error {
        print ("failed to log into Google", err)
        return
    }
    guard let authentication = user.authentication else { return }

    let credential = GoogleAuthProvider.credential(withIDToken: authentication.idToken,
                                                   accessToken: authentication.accessToken)


    Auth.auth().signInAndRetrieveData(with: credential, completion: { (authResult, error) in
        if let error = error {
            print ("failed to create with google account")
            return
        }
       // User is signed in
        guard let uid = user?.userID else {
            return

        }

我遵循了 Firebase 上的文档并启用了“Google 登录”。提前致谢!

最佳答案

我找到了问题的答案:

func sign(_ signIn: GIDSignIn!, didSignInFor user: GIDGoogleUser!, withError error: Error!){
    if let err = error {
        print ("failed to log into Google", err)
        return
    }

    print("successfully logged into Google",user)
    guard let idToken = user.authentication.idToken else {return}
    guard let accessToken = user.authentication.accessToken else {return}
    let credentials = GoogleAuthProvider.credential(withIDToken: idToken, accessToken: accessToken)


    Auth.auth().signInAndRetrieveData(with: credentials, completion: { (user, error) in
        if let err = error {
            print ("failed to create with google account", err)
            return
        }
        print("successfuly logged into Firebase with Google", user?.user.uid)





})


    }

问题出在第一行代码,其中“didSignInFor”的大写字母不正确。同样,有一个重复的函数调用相同的登录函数,这可能是用户没有出现在 Firebase 控制台的“身份验证”选项卡上的另一个问题。

关于swift - FirebaseAuth 未通过 Google 身份验证创建新用户 - Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50801986/

相关文章:

Swift 概述 SKLabelNodes

ios - 在 Alamofire 2.0 中使用客户端证书

android - flutter + firebase + Stripe

javascript - 有没有办法在重定向到另一个页面后保持登录状态?

ios - 通过使用查询而不是重复观察单个事件来加快为我的社交网络应用获取帖子

firebase - flutter 灭火焰中的空方法调用 setter/getter uid

javascript - iOS iPhone 11 在浏览器不断重新加载时黑白闪烁 : RBS Background assertion ConnectionTerminationWatchdog

ios - 如何检索和显示存储在数组中的 UIIMage?

android - 与 Crashlytics 一起运行 Firebase-Auth + Firebase-UI

android - 如何在flutter中使用firebase登录谷歌时检查用户是新用户还是现有用户?