在应用程序完全重新启动之前,不要再次显示mainactivity



我有一个应用程序,它有一个主活动。当它切换到第二个活动时,我会这样做:

startActivity(intent);
finish();

我希望这将完全阻止应用程序返回到主要活动。当我在secnond活动中按下android后退按钮时,它会回到主屏幕(这就是我想要的(。但当我从多任务处理中再次打开应用程序时,它又回到了第一个活动!以前有人遇到过这个问题吗?

我遇到了这个问题,我的第一个屏幕将是一个登录活动,它只用于在用户未登录时显示。否则,它将显示主屏幕。我尝试了SharedPreferences来实现登录持久性,但事实证明,我使用的身份验证服务GoogleFirebase内置了登录持久性。

然而,在没有更多信息的情况下,我只能建议您研究SharedPreferences,并在启动时对条件进行布尔检查。如果满足条件,则开始家庭活动;否则,显示主要活动。类似于:

boolean isLogin;
SharedPreferences settings;
SharedPreferences.Editor editor;
settings = getApplicationContext().getSharedPreferences("MyPrefs", MODE_PRIVATE);
isLogin = settings.getBoolean("islogin", false);
if(isLogin) {
finish();
goToDash();
}

公共界面共享偏好,安卓开发者

获取共享偏好

使用Android共享偏好

想明白了!我的应用程序使用twitter api,重新启动该应用程序将导致一个错误,因为它尝试获取以前没有的凭据。我还确保在切换某些应用程序时完全清除堆栈,方法是:

intent.addFlags(intent.FLAG_ACTIVITY_CLEAAR_TASK|intent.FLAG_ACTIVITY_NEW_TASK(;

最新更新