Android 应用程序再次进入前台后的登录屏幕。登录屏幕不是 root Activity

Android Login Screen after Application enters foreground again. Login Screen is NOT root Activity

我正在编写投票 Android 应用程序。在用户选择了他想要投票的选举后,用户将被重定向到登录 Activity,他必须在其中输入密码。之后,投票 Activity 开始,该人可以选择一些候选人。该项目的一个要求是,如果应用程序离开前台 (onPause()) 并稍后返回前台 (onResume()),登录屏幕应该 return 并再次询问用户的凭据。人们如何意识到这一点?我在 Whosebug 上看到了一些解决方案 android:clearTaskOnlaunch="true",但这仅在登录屏幕是根 activity 时才有效,但在我的情况下并非如此。有人可以帮我吗?谢谢。

P.S:对不起我的英语不好,我不是母语人士。

您只需在每次启动 LoginActivity 或 BallotActivity 时调用 finish()。

private void go2Login(){
   Intent i = new Intent (BallotActivity.this, LoginActivity.class);
   startActivity(i);
   finish();
}

void onPause(){
   go2Login();
}

但我认为这不是一个好的设计。如果每次应用程序暂停时都必须输入密码,用户会很生气。我认为您应该将他的密码存储在首选项中。