0

我的应用中有 3 个活动:A、B、C。A 启动 B,B 启动 C。C 的启动模式是 SingleInstance(在清单中声明)。

步骤: 1.当我在C上时,我在通知栏中显示通知,点击哪个启动同一个屏幕。2.我通过按主页将我的应用程序置于后台。3. 当我点击通知时,C 启动。

问题:当我按下 C 键时,我退出了我的应用程序。相反,我应该回到我的应用程序的早期屏幕,即 B

注意:我已将 C 声明为 singleInstance,因为我不希望在点击通知时启动多个 C 实例。我已经使用OnNewIntent()处理了相同的实例,方法是用相应的数据刷新 UI。

提前致谢!

4

1 回答 1

1

standard使用Activity C的默认启动模式。

在用于构建PendingIntent通知的意图中,添加标志FLAG_ACTIVITY_SINGLE_TOP

Intent intent = new Intent(this, ActivityC.class);
intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);

活动 C 的现有实例将被恢复并onNewIntent()调用该方法。

于 2015-12-19T22:58:12.480 回答