【发布时间】:2021-10-22 16:38:36
【问题描述】:
在你从 stackoverflow 中删除我的问题之前,请听我说完。 我知道这个问题很常见,但我尝试过的都没有帮助我。我已经在 stackoverflow 和其他网站上看到了可用的解决方案,但它们并没有解决我的问题。 所以即使你选择从这个论坛中删除我的问题,请先帮我解决我的问题,至少给我发邮件。
button1.setOnClickListener(view -> {
login();
});
}
public void login() {
Intent intent = new Intent(this, IndexActivity.class);
String mail = et1.getText().toString();
String password = et2.getText().toString();
if (mail.isEmpty()) {
error.setText(e1);
} else if (password.isEmpty()) {
error.setText(e2);
} else if (password.length() < 6) {
error.setText("Invalid Password Length!!");
et2.setError("Password length must be at least 6!!");
} else {
mAuth.signInWithEmailAndPassword(mail, password).addOnCompleteListener(task -> {
if (task.isSuccessful()) {
Toast.makeText(MainActivity.this, "Welcome Back",Toast.LENGTH_LONG).show();
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(intent);
error.setText("");
et1.setText("");
et2.setText("");
}
else {
Toast.makeText(MainActivity.this, " "+ Objects.requireNonNull(task.getException()).getMessage(),Toast.LENGTH_LONG).show();
error.setText(e3);
}
});
}
if (error.getText().toString().isEmpty()) {
error.setVisibility(View.INVISIBLE);
} else {
error.setVisibility(View.VISIBLE);
}
}
}
以上是我的登录页面
下面是我的孩子活动
logout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (mAuth.getCurrentUser() != null) {
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
mAuth.signOut();
startActivity(intent);
finish();
}
else {
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
startActivity(intent);
}
}
});
我已经尝试了互联网上的所有内容。 sharedPreferences、onBackPressed 覆盖、onSaveInstanceState、onRestoreInstanceState、onStart 和 onResume 覆盖,但我不知道具体要使用什么。
【问题讨论】:
-
请编辑您的问题以包含您遇到的确切问题,以及问题来自代码的何处?例如:如果您在调试器中逐行执行此代码,那么第一行没有按照您的预期执行?
-
您好,先生!我分享了完整的代码是有原因的,因为我不知道代码在哪里需要额外的行。如果用户之前已登录但尚未注销,我希望将用户直接发送到我的 IndexActivity。我有一个单独的按钮。如果用户选择注销,则在下次打开应用程序时打开 MainActivity。
标签: java android firebase-authentication