繁体   English   中英

如何翻译来自 Firebase 身份验证的错误代码?

[英]how to translate the error code from Firebase Authentication?

当我使用 Firebase 注册帐户时,有时会发生错误,我想将一些错误翻译成另一种语言。 在 IOS 我可以做这样的事情

Auth.auth().createUser(withEmail: emailTextField.text!, password: passwordTextField.text!) { (user, error) in


            if let error = error {

                if let errorCode = AuthErrorCode(rawValue: error._code) {

                    SVProgressHUD.dismiss()

                    switch errorCode {
                    case .networkError : self.showAlert(alertTitle: "Mohon Maaf", alertMessage: "Koneksi Internet bermasalah", actionTitle: "Kembali")
                    case .emailAlreadyInUse : self.showAlert(alertTitle: "Mohon Maaf", alertMessage: "Email yang anda masukan sudah pernah digunakan, silahkan gunakan email yang lain", actionTitle: "Kembali")
                    case .weakPassword : self.showAlert(alertTitle: "Mohon Maaf", alertMessage: "Password minimal harus memiliki 6 huruf", actionTitle: "Kembali")
                    case .invalidEmail : self.showAlert(alertTitle: "Mohon Maaf", alertMessage: "Format email yang anda masukan tidak valid, mohon diperiksa kembali.", actionTitle: "Kembali")
                    default : self.showAlert(alertTitle: "Sorry", alertMessage: "\(error.localizedDescription)", actionTitle: "Back")
                    }

                }

            }
        }

我正在尝试将错误从英语切换到另一种语言。 我已经尝试过,但在 Android 中找不到方法。 这是我使用 email 和密码创建用户时使用的代码:

    FirebaseAuth.getInstance().createUserWithEmailAndPassword(email,password)
        .addOnCompleteListener { result ->

       }.addOnFailureListener { exception ->

          // want to translate the error in here

       }

java 没问题。

下面的代码行:

exception.getMessage();

在以下代码行中获取英语的异常消息:

exception.getLocalizedMessage();

获取本地化消息。 根据有关Throwable的getLocalizedMessage()方法的官方文档:

创建此throwable的本地化描述。 子类可以重写此方法,以生成特定于语言环境的消息。 对于不覆盖此方法的子类,默认实现返回与getMessage()相同的结果。

在我看来

FirebaseAuth.getInstance().createUserWithEmailAndPassword(email,password)
    .addOnCompleteListener { result ->
      if(result.isSuccessful){
              //Do something here
      }
   }.addOnFailureListener { exception ->

      val errorCode = (e as FirebaseAuthException?)!!.errorCode
      when(errorCode){
          "ERROR_WEAK_PASSWORD" -> {
              //Do something here
          }
          else -> {
              //Do something here
          }
      }

}

如果您需要更多内容,请查看此链接。

如何捕获 Firebase Auth 特定异常

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM