此函数将Firebase(Firestore)用户用作参数,我希望它在满足条件时返回true。当我将条件1 == 1作为条件放置时,它始终为true,它确实从数据库中获取了一个文档,并且它是正确的文档,并且PYC布尔变量变为true,但是该函数从不返回true,它始终返回错误,我怀疑背后可能有线程问题,但是我该如何解决呢?
fun perfilYConsFunction(user: FirebaseUser): Boolean{
var pYC = false
val email = user.email.toString()
db.collection("users").document(email)
.get()
.addOnSuccessListener { documentSnapshot ->
documentSnapshot?.let { document ->
if (1 == 1) {
println("------ ok")
pYC = true
} else {
println("-------not ok")
pYC = false
}
}
}
.addOnFailureListener {exception ->
println("--- Error: $exception")
}
return pYC
}