我的应用中有3个活动:A,B,C。 A发射B,B发射C. C的启动模式是SingleInstance(在清单中声明)。
步骤: 1.当我在C上时,我会在通知栏中显示通知,点击其中启动相同的屏幕。 我按回家把我的应用程序放在后台。 3.当我点击通知时,C就会启动。
问题:当我按回C时,我退出了我的应用程序。相反,我应该回到我的应用程序的早期屏幕,即B
注意:我已将C声明为singleInstance,因为我不希望在通知时启动多个C实例。我已经处理了相同的实例,其中 OnNewIntent( ),通过刷新UI和相应的数据。
提前致谢!
答案 0 :(得分:1)
对活动C使用standard
的默认启动模式。
在用于为您的通知构建PendingIntent
的意图中,添加标记FLAG_ACTIVITY_SINGLE_TOP
:
Intent intent = new Intent(this, ActivityC.class);
intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
将恢复活动C的现有实例,并调用onNewIntent()
方法。