如何以编程方式“重新启动”android应用程序

我正在尝试在我的应用程序中创build一个“注销”function。 基本上,通过注销,应用程序数据应该被清除。 我想要做的是注销后,应用程序应重新启动,以便可以再次input凭证等。 我遇到的问题是,在用户点击“注销”时,应用程序已经有3-4个活动在运行,我不知道如何退后一步。 我如何(模拟?)重新启动应用程序?

尝试使用下面的行重新启动应用程序

Intent i = getBaseContext().getPackageManager() .getLaunchIntentForPackage( getBaseContext().getPackageName() ); i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(i); 

签出意向属性,如没有历史,清除栈等… 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);