如何解决Firebase 验证为假,不会为真,重置后密码也不会更新
我已经能够发送并验证电子邮件,但 Fire Base 没有更新。此外,当我检查重置密码时,发送的电子邮件已重置,并且火力基地也没有改变。如何将其更改为密码和电子邮件验证将在 fire base 中更新的位置?
我搜索了几个网站并观看了几个视频。我对编码真的很陌生。感谢您的帮助。
这是我的登录:
public class Login extends AppCompatActivity implements View.OnClickListener {
//Variables
private Button register,signin,forgotpassword;
private TextInputLayout Email,Password;
private FirebaseAuth mAuth;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getwindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_login);
register = findViewById(R.id.register);
register.setonClickListener(this);
signin = (Button)findViewById(R.id.SignIn);
signin.setonClickListener( this );
Email = findViewById( R.id.email );
Password = findViewById( R.id.password );
mAuth = FirebaseAuth.getInstance();
forgotpassword = (Button) findViewById(R.id.forgot_password);
forgotpassword.setonClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.register:
startActivity(new Intent(this,SignUp.class));
break;
case R.id.SignIn:
startActivity( new Intent(this,UserInterface.class) );
break;
case R.id.forgot_password:
startActivity( new Intent(this,ForgotPass.class) );
break;
}
}
private void userlogin() {
String email = Email.getEditText().getText().toString().trim();
String password = Password.getEditText().getText().toString().trim();
if (email.isEmpty()){
Email.setError("Email is required!");
Email.requestFocus();
return;
}
if (!Patterns.EMAIL_ADDRESS.matcher(email).matches()){
Email.setError("Please provide valid Email!");
Email.requestFocus();
return;
}
if (password.isEmpty()){
Password.setError("Password is required!");
Password.requestFocus();
return;
}
if (password.length() < 6){
Password.setError("Min password length is 6 characters!");
Password.requestFocus();
return;
}
mAuth.signInWithEmailAndPassword(email,password).addOnCompleteListener( new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()){
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if (user.isEmailVerified()){
startActivity(new Intent(Login.this,UserInterface.class));
}else{
user.sendEmailVerification();
Toast.makeText(Login.this,"Check your email to verify your account!",Toast.LENGTH_LONG).show();
}
}else {
Toast.makeText(Login.this,"Failed to login! Please check Email and Password",Toast.LENGTH_LONG).show();
}
}
});
}
}
这是我忘记的密码
public class ForgotPass extends AppCompatActivity {
private Button reset_password;
private TextInputLayout fullname,email;
FirebaseAuth auth;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate( savedInstanceState );
getwindow().setFlags( WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView( R.layout.activity_forgot_pass );
email = findViewById(R.id.email);
fullname = findViewById(R.id.fullname);
reset_password = (Button) findViewById(R.id.fp_submit);
auth = FirebaseAuth.getInstance();
reset_password.setonClickListener( new View.OnClickListener() {
@Override
public void onClick(View v) {
fp_submit();
}
} );
}
private void fp_submit(){
String email = this.email.getEditText().getText().toString().trim();
String fullname = this.fullname.getEditText().getText().toString().trim();
if (fullname.isEmpty()){
this.fullname.setError( "Name is required" );
this.fullname.requestFocus();
return;
}
if (email.isEmpty()){
this.email.setError( "Email is required" );
this.email.requestFocus();
return;
}
if (!Patterns.EMAIL_ADDRESS.matcher( email ).matches()){
this.email.setError( "Please priovide valid email" );
this.email.requestFocus();
return;
}
//progressBar.setVisibility(View.VISIBLE)
auth.sendPasswordResetEmail( email ).addOnCompleteListener( new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()){
Toast.makeText( ForgotPass.this,"Check your email to reset your password",Toast.LENGTH_LONG ).show();
startActivity( new Intent(ForgotPass.this,Login.class) );
}else{
Toast.makeText( ForgotPass.this,"Please try again!",Toast.LENGTH_LONG ).show();
}
}
} );
}
}
这是我的注册
public class SignUp extends AppCompatActivity implements View.OnClickListener {
private FirebaseAuth mAuth;
private TextInputLayout FullName,UserName,Email,Password;
private Button Submit,login;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getwindow().setFlags( WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_sign_up);
mAuth = FirebaseAuth.getInstance();
login = (Button)findViewById(R.id.login);
login.setonClickListener(this);
Submit = (Button) findViewById(R.id.submit);
Submit.setonClickListener(this);
FullName = findViewById(R.id.fullname);
UserName = findViewById(R.id.username);
Email = findViewById(R.id.email);
Password = findViewById(R.id.password);
}
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.login:
startActivity(new Intent(this,Login.class));
break;
case R.id.submit:
startActivity( new Intent(this,Login.class));
break;
}
}
private void submit(){
String email = Email.getEditText().getText().toString().trim();
String password = Password.getEditText().getText().toString().trim();
String fullName = FullName.getEditText().getText().toString().trim();
String username = UserName.getEditText().getText().toString().trim();
if (fullName.isEmpty()){
FullName.setError("Full Name is required!");
FullName.requestFocus();
return;
}
if (username.isEmpty()){
UserName.setError("User Name is required!");
UserName.requestFocus();
return;
}
if (password.isEmpty()){
Password.setError("Password is required!");
Password.requestFocus();
return;
}
if (email.isEmpty()){
Email.setError( "Email is required!" );
Email.requestFocus();
return;
}
if (!Patterns.EMAIL_ADDRESS.matcher(email).matches()){
Email.setError("Please provide valid Email!");
Email.requestFocus();
return;
}
if (password.length() < 6){
Password.setError("Min password length should be six characters!");
Password.requestFocus();
return;
}
mAuth.createuserWithEmailAndPassword(email,password)
.addOnCompleteListener( new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()){
User user = new User (fullName,email,username,password);
FirebaseDatabase.getInstance().getReference("user")
.child( FirebaseAuth.getInstance().getCurrentUser().getUid() )
.setValue( user ).addOnCompleteListener( new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()){
Toast.makeText( SignUp.this,"Successfully registered",Toast.LENGTH_LONG ).show();
if (task.isSuccessful()){
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if (user.isEmailVerified()){
startActivity(new Intent(SignUp.this,Login.class));
}else{
user.sendEmailVerification();
Toast.makeText(SignUp.this,Toast.LENGTH_LONG).show();
}
}startActivity(new Intent(SignUp.this,Login.class));
}else{
Toast.makeText( SignUp.this,"Unable to register!",Toast.LENGTH_LONG ).show();
}
}
} );
}else{
Toast.makeText( SignUp.this,Toast.LENGTH_LONG ).show();
}
}
} );
} }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。