【问题标题】:Update Phone Number in Firebase Authentication - Swift在 Firebase 身份验证中更新电话号码 - Swift
【发布时间】:2019-05-21 11:01:38
【问题描述】:

有没有办法更新 firebase auth? 中的电话号码问题是,如果用户在注册时输入了错误的号码,那么我可以将旧号码更新为新号码,然后在新号码中发送验证码吗?我怎样才能做到这一点?

【问题讨论】:

标签: ios swift firebase firebase-authentication


【解决方案1】:

有一个method on the User object called updatePhoneNumber,这似乎是你想要的。

文档没有提及这对验证状态有何影响,尽管我认为它确实也需要验证新号码。试一试,如果不是这样,请告诉我。

【讨论】:

    【解决方案2】:

    在用户必须输入电话号码的屏幕上:

    var verificationId: String?
    
    PhoneAuthProvider.provider().verifyPhoneNumber(phoneNumberTextField.text!, uiDelegate: nil) { (verificationID, error) in
    
        if let error = error { return }
    
        self.verificationId = verificationID else { return }
    }
    

    在用户必须输入短信验证码的屏幕上:

    guard let safeVerificationId = self.verificationId else { return }
    
    let credential = PhoneAuthProvider.provider().credential(withVerificationID: safeVerificationId, verificationCode: smsTextField.text!)
    
    Auth.auth().currentUser?.updatePhoneNumber(credential, completion: { (error) in
    
        if let error = error { return }
    })
    

    【讨论】:

    • 这对我有用,应该将 deffo 标记为正确答案。跟随网络上的其他一些解决方案,它们都是线轴。 Firebase 文档也很垃圾。谢谢@lanceSamaria
    【解决方案3】:

    不客气

    Auth.auth().currentUser?.updatePhoneNumber(credential, completion: { (error) in
                if error == nil {
                    print("succes")
                }
            })
    

    【讨论】:

      猜你喜欢
      • 2020-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-11
      • 2018-05-17
      相关资源
      最近更新 更多