如何清除现有任务并在Android中启动全新任务?

时间:2015-11-10 10:51:04

标签: android android-activity task

在我的Android应用中,我使用以下活动标记从通知启动我的应用:

  1. IntentCompat.FLAG_ACTIVITY_CLEAR_TASK
  2. Intent.FLAG_ACTIVITY_NEW_TASK
  3. Intent.FLAG_ACTIVITY_CLEAR_TOP
  4. 旧的任务的一些活动在新发布时仍然可见。 我错过了任何旗帜吗?

3 个答案:

答案 0 :(得分:0)

您可以在创建PendingIntent之前添加此行,但在此之后它取决于您想要做的事情:

targetIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);

答案 1 :(得分:0)

试试这个,

Intent intent = new Intent(MainActivity.this, Second.class).setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(intent);
finish();

答案 2 :(得分:0)

Intent loginscreen = new Intent(this,HomeActivity.class); loginscreen.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);

startActivity(loginscreen);

this.finish();

我同意@fab它与注销功能一样好,你想要清除用户设置的所有标志值。 为了实现目标,android已经提供了Activity启动模式来启动活动

有关详细说明,请浏览Link