开发者社区> 问答> 正文

Firebase isEmailVerify在Kotlin中不起作用

我有一个IOS应用程序,因此我决定构建Android / Kotlin版本,并且在使用Firebase / isEmailVerify时遇到了麻烦。我可以注册一个新用户并发送电子邮件进行验证,但是,如果我不验证,我仍然可以登录。我是科特林的新手。任何帮助是极大的赞赏。

我的密码


fun verifyEmail() {
        auth.currentUser?.reload()
        if (auth.currentUser?.isEmailVerified == null) {
            println("USER NEEDS TO VERIFY EMAIL")
        } else {
            finish()
        }
    }

        fun loginBtnClicked(view: View) {
            val email = loginEmailTxt.text.toString()
            val password = loginPasswordTxt.text.toString()

            auth.signInWithEmailAndPassword(email, password)
                .addOnSuccessListener { exception ->
                    println("USER LOGGED IN")
                }
                .addOnFailureListener { exception ->
                    Log.e("Exception", "Could not sign in user - ${exception.localizedMessage}")
                }
                verifyEmail()
        }   

展开
收起
Puppet 2020-01-06 14:31:58 417 0
1 条回答
写回答
取消 提交回答
  • 预计用户仍可以在验证电子邮件之前登录。这为您的应用提供了一种方法,以允许用户请求发送另一封验证电子邮件,以防第一封邮件出现问题。

    如果要限制用户在验证电子邮件之前可以执行的操作,可以检查UserInfo对象上的isEmailVerfied(),还可以在安全规则中使用auth.token.email_verified来限制他们对还提供的数据库和存储的访问由Firebase提供。

    2020-01-06 14:32:41
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载