【问题标题】:How to recreate recent-apps activity when app is launched from notification从通知启动应用程序时如何重新创建最近的应用程序活动
【发布时间】:2015-11-14 21:11:34
【问题描述】:

当我收到通知时,我的应用和活动在我的最近应用列表中。当我单击通知时,我希望通知的意图得到遵守。在我的情况下,我想重新启动活动(蛮力)并传入新的意图:所以,完成然后重新创建。我正在阅读诸如FLAG_ACTIVITY_NEW_TASKFLAG_ACTIVITY_SINGLE_TOP 之类的标签,但我对它们的了解还不够,不知道如何强制“完成然后重新创建”我的活动。而且,哦,有问题的活动是 MainActivity。

GcmListenerService里面的sn-p使用

intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

用于发送通知意图

或者

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

【问题讨论】:

    标签: android android-intent android-notifications


    【解决方案1】:

    意图标志 FLAG_ACTIVITY_CLEAR_TOP 应该产生所需的行为。 documentation for Tasks and Back Stack 在使用 Intent Flags 一节中这样说:

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

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

    【讨论】:

      猜你喜欢
      • 2012-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-14
      相关资源
      最近更新 更多