我该怎么做?我知道它可以做到
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
这个,但它通过意图启动一个新活动,但我想退出应用程序。
法典:
intent = new Intent();
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
activity.startActivity(intent);
activity.finish();
注意:我正在做非活动课,所以这就是为什么activity.finish();
试试这个
Intent intent = new Intent();
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK
|Intent.FLAG_ACTIVITY_CLEAR_TASK);
activity.startActivity(intent);
activity.finish();
要退出应用程序调用finishAffinity()
。通过使用它,您可以清除所有后退堆栈。
否则
从当前活动调用以下代码。
Intent intent = new Intent(getApplicationContext(),ActivityOne.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); //This will clear back stack
intent.putExtra("QUIT_CURRENT_ACTIVITY", true);
startActivity(intent);
然后在ActivityOne
onCreate(...)
方法中调用以下代码行。
if (getIntent().getBooleanExtra("QUIT_CURRENT_ACTIVITY", false)) { //Default should be false
finish();
}
希望这对你有用。
你可以使用它。
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
System.exit(0);