如何在Android Kotlin中获取特定的FirebaseAuthUserCollision?

时间:2019-08-22 17:53:55

标签: android firebase kotlin firebase-authentication

我是使用Kotlin进行Firebase android开发的初学者,我的问题是我想使用Kotlin检测特定的FirebaseAuthUserException。我如何获得理想的结果。

我已经看到了使用JAVA的示例,但是我无法弄清楚如何使用Kotlin来实现它。非常感谢您的帮助。以下是我在代码中编写的内容:


private fun signInWithPhoneAuthCredential(credential: PhoneAuthCredential) 
{
        mAuth.signInWithCredential(credential)
            .addOnCompleteListener(this) 
              { task ->
                    if (task.isSuccessful) 
                      {
                          progressBar.visibility=View.INVISIBLE
                          gotomainactivity(
                          mAuth.currentUser!!.uid.toString()
                          ,phoneNumber_to_verify)
                       }
                else
                {
                    //Handle task if not sign inis not sucessful due to phone 
                     number already exist
                    val message=task.exception.toString()
                    Toast.makeText(this@RegisterActivity,"Error: 
                    $message",Toast.LENGTH_SHORT).show()
                    progressBar.visibility=View.INVISIBLE

                }
            }
}

如果电话号码已经存在,我希望向使用烤面包的用户显示。

1 个答案:

答案 0 :(得分:0)

使用以下代码行时:

val message=task.exception.toString()

您将获取异常对象的String表示形式,更确切地说是从内存中获取对象的地址。相反,您应该做的是从异常中获取消息。因此,请将上面的代码行更改为:

val message=task.exception!!.message