更新时间:2023-12-05 22:05:52
You should have defined the variables email
and password
outside the method registerUser()
. It seems that your Button is not correctly set as well.
package com.safariagaming.flix;
/**
* Imports...
*/
public class SignUpScreen extends AppCompatActivity implements View.OnClickListener {
private String email = null;
private String password = null;
private FirebaseAuth.AuthStateListener mAuthListener;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sign_up_screen);
/**
* Inits and code...
*/
// Signup button on listener
buttonSignup.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
email = editTextEmail.getText().toString().trim();
password = editTextPassword.getText().toString().trim();
// Verifications
if (TextUtils.isEmpty(email)) {
Toast.makeText(LoginActivity.this, R.string.empty_email, Toast.LENGTH_SHORT).show();
return;
}
if (!Patterns.EMAIL_ADDRESS.matcher(email).matches()) {
Toast.makeText(LoginActivity.this, R.string.wrong_email, Toast.LENGTH_SHORT).show();
return;
}
if (TextUtils.isEmpty(password)) {
Toast.makeText(LoginActivity.this, R.string.empty_password, Toast.LENGTH_SHORT).show();
}
// Authenticating user
mAuth.createUserWithEmailAndPassword(email, password)
.addOnCompleteListener(LoginActivity.this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (!task.isSuccessful()) {
Toast.makeText(LoginActivity.this, R.string.wrong_credentials, Toast.LENGTH_SHORT).show();
} else {
goDashboard();
finish();
}
}
});
}
});
}
// onStart() state listener
@Override
public void onStart() {
super.onStart();
mAuth.addAuthStateListener(mAuthListener);
}
@Override
public void onStop() {
super.onStop();
if (mAuthListener != null) {
mAuth.removeAuthStateListener(mAuthListener);
}
}
}