如何在通知启动应用程序时重新创建最近的应用程序活动

时间:2015-11-14 21:11:35

标签: android android-intent android-notifications

我收到通知时,我的应用和活动位于最近的应用列表中。当我点击通知时,我希望通知的意图得到尊重。在我的情况下,我想重新启动活动(暴力)并传递新意图:所以,完成然后重新创建。我正在阅读FLAG_ACTIVITY_NEW_TASKFLAG_ACTIVITY_SINGLE_TOP这样的标签,但我不太了解它们如何强制“完成然后重新创建我的活动。而且,哦,活动在问题是MainActivity。

GcmListenerService中的代码段使用

intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

用于发送通知意图

替代地

如果我选择onNewIntent事情变得复杂,因为可能会显示DialogFragments等等。我必须清除所有内容。这就是为什么完成然后重新创建对我来说似乎是最简单的解决方案。

1 个答案:

答案 0 :(得分:0)

Intent标志FLAG_ACTIVITY_CLEAR_TOP应该产生所需的行为。 documentation for Tasks and Back Stack在使用Intent Flags部分中说明了这一点:

  

如果指定活动的启动模式是“标准”,它也是   从堆栈中删除,并在其位置启动一个新实例   处理传入的意图。那是因为一个新实例总是如此   当启动模式为“标准”时为新意图创建。

documentation for FLAG_ACTIVITY_CLEAR_TOP更详细地描述了相同的行为。