Android 如何重置所有活动并启动新活动?

Android 如何重置所有活动并启动新活动?,android,Android,我有一个应用程序,我希望以这种方式导航: A->B->C 从C启动一个名为D的新活动,它进入顶部并清除任务,这意味着如果我按回D,它将进入主屏幕 如果我理解正确的话,这个标志:在家里标记活动任务。。。但它只出现在当前的API上(11>) 我正在为Android 1.5开发>我怎么也能有这种行为 谢谢 您可以使用FLAG\u ACTIVITY\u CLEAR\u TASK以及FLAG\u ACTIVITY\u NEW\u TASK 公共静态最终整数标志\u活动\u清除\u任务 自:API 11级

我有一个应用程序,我希望以这种方式导航:

A->B->C

从C启动一个名为D的新活动,它进入顶部并清除任务,这意味着如果我按回D,它将进入主屏幕

如果我理解正确的话,这个标志:在家里标记活动任务。。。但它只出现在当前的API上(11>)

我正在为Android 1.5开发>我怎么也能有这种行为


谢谢

您可以使用
FLAG\u ACTIVITY\u CLEAR\u TASK
以及
FLAG\u ACTIVITY\u NEW\u TASK

公共静态最终整数标志\u活动\u清除\u任务

自:API 11级

如果在传递给Context.startActivity()的意图中设置,则此标志将 使将与活动关联的任何现有任务 在活动开始之前,必须清除。就是活动, 成为其他空任务的新根,以及任何旧根 活动结束了。这只能与 标记\u活动\u新任务

我最终使用了它,因为我需要从1.5>开始使用它,并且该标志仅在更高的API上可用


如果我不需要支持“低”API级别,那么@aromero的答案将是我的选择。

您正在寻找:

Intent intent = new Intent(activity, activityClass);
ComponentName cn = intent.getComponent();
Intent mainIntent = IntentCompat.makeRestartActivityTask(cn);
activity.startActivity(mainIntent);
使用google提供的android兼容性库-可在sdk中找到


或者使用
finish()

,因为这个答案已经过时了,我已经接受@A.Binzxxxxxx作为最新版本(但还没有尝试他的代码)。