我正在尝试在我的应用程序中创建一个“注销”功能。基本上,通过注销,应清除应用程序数据。我想要做的是在注销后,应用程序应该重新启动,以便可以再次输入凭据等。我遇到的问题是,当用户点击“注销”时,应用程序已经运行了3-4个活动,我不知道如何退回它们。我如何(模拟?)重新启动应用程序?
答案 0 :(得分:55)
结帐意图属性,如无历史记录,清除后台堆栈等... Intent.setFlags
Intent mStartActivity = new Intent(HomeActivity.this, SplashScreen.class);
int mPendingIntentId = 123456;
PendingIntent mPendingIntent = PendingIntent.getActivity(HomeActivity.this, mPendingIntentId, mStartActivity,
PendingIntent.FLAG_CANCEL_CURRENT);
AlarmManager mgr = (AlarmManager) HomeActivity.this.getSystemService(Context.ALARM_SERVICE);
mgr.set(AlarmManager.RTC, System.currentTimeMillis() + 100, mPendingIntent);
System.exit(0);