Reputation: 7220
I am using Email/Password Auth From Firebase. And I handle The exception message. and I First Registered and After That Go To Login Activity But When I Write The Email I am Registered With It .. I can not log in And Get This Error "The email address is already in use by another account".
In Firebase Panel I have the Email That Register By It BUt I can Not Login With It.
this Is My code Too...First For Registered:
private lateinit var firebaseAuth: FirebaseAuth
/*Firebase Auth*/
firebaseAuth = FirebaseAuth.getInstance()
/*Register With Firebase Auth*/
fun onRegisterBtnClick(view: View) {
val dialog: ProgressDialog = ProgressDialog.show(
this@StudentRegisterActivity, getString(R.string.please_wait),
getString(R.string.processing), true
)
firebaseAuth.createUserWithEmailAndPassword(stuEmail, stuPass).addOnCompleteListener {
dialog.dismiss()
if (it.isSuccessful) {
val snackbar: Snackbar = Snackbar.make(
binding.coordinator,
getString(R.string.register_succesed), Snackbar.LENGTH_SHORT
)
snackbar.show()
/*Intent to Login Activity*/
val intent = Intent(this@StudentRegisterActivity, StudentLoginActivity::class.java)
startActivity(intent)
} else {
Log.e(TAG, it.exception.toString())
val snackbar: Snackbar = Snackbar.make(
binding.coordinator,
it.exception!!.message!!, Snackbar.LENGTH_SHORT
)
snackbar.show()
}
}
}
and LOGIN
private lateinit var firebaseAuth: FirebaseAuth
/*Firebase Auth*/
firebaseAuth = FirebaseAuth.getInstance()
fun onLoginBtnClick(view: View) {
val dialog: ProgressDialog = ProgressDialog.show(
this@StudentLoginActivity, getString(R.string.please_wait),
getString(R.string.processing), true
)
firebaseAuth.createUserWithEmailAndPassword(stuEmail, stuPass).addOnCompleteListener {
dialog.dismiss()
if (it.isSuccessful) {
val snackbar: Snackbar = Snackbar.make(
binding.coordinator,
getString(R.string.register_succesed), Snackbar.LENGTH_SHORT
)
snackbar.show()
/*Intent to Login Activity*/
val intent = Intent(applicationContext, BatchesStudentActivity::class.java)
startActivity(intent)
} else {
Log.e(TAG, it.exception.toString())
val snackbar: Snackbar = Snackbar.make(
binding.coordinator,
it.exception!!.message!!, Snackbar.LENGTH_SHORT
)
snackbar.show()
}
}
}
Upvotes: 4
Views: 4148
Reputation: 56
do this inside your clickListener
if(!TextUtils.isEmpty(stuEmail) && !TextUtils.isEmpty(stuPass)){
firebaseAuth.signInWithEmailAndPassword(stuEmail, stuPass).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if(task.isSuccessful()){
//give the intent or whatever you want
} else {
String errorMessage = task.getException().getMessage();
Toast.makeText(LoginActivity.this, "Error : " + errorMessage, Toast.LENGTH_LONG).show();
}
}
});
}
Upvotes: 4