如何清除活动堆栈并将运行活动带到Android的前台?

时间:2015-03-16 11:38:50

标签: android android-intent android-activity

我从我的应用程序的活动(活动A)之一启动另一个Android应用程序的活动(一个或多个)来运行一些测试脚本。运行之后,我希望将活动A带到前台,关闭其他应用程序的活动。

我正在努力通过在launchMode中将活动A singleTop设置为manifest并使用此代码段来实现此目的:

Intent intent = new Intent(getApplication(), ActivityA.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION | Intent.FLAG_ACTIVITY_CLEAR_TOP); //Clear Top Flag
startActivity(intent);

我在启动 ActivityA 时也尝试使用Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK,这将清除整个任务并创建 ActivityA 的新实例,而我想要正在运行的实例 ActivityA 将被带到前台

我还尝试从this link

实现代码示例

提前致谢

1 个答案:

答案 0 :(得分:0)

intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT | Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP);

这会将指定的活动带到堆栈顶部并清除其余部分。