Я пытался работать разными способами, но это просто не работает. пожалуйста помоги. Я пробовал isEmailVerified положительный и отрицательный, но по какой-то причине он работает альтернативно. да, я использовал подтверждение электронной почты на странице регистрации, но при регистрации это проблемы
class LoginActivity : AppCompatActivity() {
private val firebaseAuth = FirebaseAuth.getInstance()
private val firebaseAuthListener = firebaseAuth.addAuthStateListener {
// user?.let {
// startActivity(HomeActivity.newIntent(this))
// finish()
//}
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_login)
setTextChangeListener(emailET, emailTIL)
setTextChangeListener(passwordET, passwordTIL)
loginProgressLayout.setOnTouchListener { v, event -> true }
}
fun setTextChangeListener(et: EditText, til: TextInputLayout) {
et.addTextChangedListener(object: TextWatcher {
override fun afterTextChanged(s: Editable?) {
}
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {
}
override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
til.isErrorEnabled = false
}
})
}
fun onLogin(v: View) {
var proceed = true
val users = FirebaseAuth.getInstance().currentUser
if (emailET.text.isNullOrEmpty()) {
emailTIL.error = "Email is required"
emailTIL.isErrorEnabled = true
proceed = false
}
if (passwordET.text.isNullOrEmpty()) {
passwordTIL.error = "Password is required"
passwordTIL.isErrorEnabled = true
proceed = false
}
if (proceed) {
if (users != null && !users.isEmailVerified) {
loginProgressLayout.visibility = View.VISIBLE
Toast.makeText(this, "if loop", Toast.LENGTH_LONG).show()
// firebaseAuth.signInWithEmailAndPassword(
// emailET.text.toString(),
// passwordET.text.toString()
//)
// .addOnCompleteListener { task: Task<AuthResult> ->
// if (!task.isSuccessful) {
// loginProgressLayout.visibility = View.GONE
// Toast.makeText(
// this, "Login error: ${task.exception?.localizedMessage}",
// Toast.LENGTH_SHORT
//).show()
//}
//}
//.addOnFailureListener { e ->
// e.printStackTrace()
//loginProgressLayout.visibility = View.GONE
//}
//startActivity(HomeActivity.newIntent(this))
//finish()
} else {
Toast.makeText(this, "else loop", Toast.LENGTH_LONG).show()
}
}
}
fun goToSignUp(v: View){
startActivity(SignUpActivity.newIntent(this))
finish()
}
override fun onStart() {
super.onStart()
firebaseAuth.addAuthStateListener{firebaseAuthListener}
}
override fun onStop() {
super.onStop()
firebaseAuth.removeAuthStateListener{firebaseAuthListener}
}
companion object {
fun newIntent(context: Context)= Intent(context, LoginActivity::class.java )
}
}