Я новичок в разработке мобильных приложений android, и я разрабатываю мобильное приложение Android, используя Kotlin с интеграцией Firebase. В приведенной ниже функции я проверяю, существует ли ранее аутентифицированный номер телефона (Firebase) в таблице аутентификации или нет, чтобы избежать отправки другого SMS и сразу перевести пользователя в Home Activity. Я изо всех сил пытаюсь заставить его работать так, как ожидалось.
private fun checkmobile() {
dbReference = FirebaseDatabase.getInstance().getReference("users")
dbReference.orderByChild("phoneNumber").equalTo(buildString {
append("+").append(country_code_picker.selectedCountryCode)
.append(txtPhone.text.toString())
})
.addValueEventListener(object : ValueEventListener {
override fun onDataChange(dataSnapshot: DataSnapshot) {
val user = dataSnapshot.getValue(UserInfo::class.java)
if (user==null) {
ShowMessage("Exists")
Log.e("Mobile:", buildString {
append("+").append(country_code_picker.selectedCountryCode)
.append(txtPhone.text.toString())
})
} else {
ShowMessage("Doesn't exist")
Log.e("Mobile:", buildString {
append("+").append(country_code_picker.selectedCountryCode)
.append(txtPhone.text.toString())
})
}
}
override fun onCancelled(rror: DatabaseError) {
}
})
}