我有一个能够解决问题的特定问题 finish()应用程序当前正在运行时的活动。这意味着我可以从“登录”页面转到MainActivity,并且由于登录完成而在用户按回该应用程序时将其关闭,但是当您第二次打开该应用程序时,它将带您进入“登录”页面而不是MainActivity。为什么会这样呢?
Intent intent = new Intent(LoginActivity.this, MainActivity.class);
LoginActivity.this.startActivity(intent);
LoginActivity.this.finish();
答案 0 :(得分:0)
您需要在共享首选项中保存一些有关登录状态的标志,并只需在启动应用程序时检查该标志以导航到MainActivity
答案 1 :(得分:0)
如果您不希望用户每次打开应用程序时都看到登录提示,则需要缓存登录令牌(最好是在SharedPreferences中),并在应用程序启动时检查有效令牌。
答案 2 :(得分:0)
尝试使用此代码检查用户是否登录
sharedpreferences pref = getsharedpreferences("user",MODE_PRIVATE);
sharedpreferences.Editor editor = pref.edit();
现在,如果用户成功登录,则将此值添加到sharedpreferences
editor.putBoolean("isLogin",true).apply();
现在在启动器活动中,只需检查是否为假,然后打开登录活动意图或 如果为true,则此代码表示MainActivity意图
if(pref.getBoolean("isLogin",false)){
Intent i = new Intent(LauncherActivity,MainActivity.class);
startActivity(i);
}