我想知道用户是否打开了应用程序,因为当我收到来自GCM的广播时,会创建一个针对该应用程序的通知。当用户单击通知时,它将启动主活动的新意图,将旧的主活动放在后堆栈上,然后,当用户要求后退导航时,它将关闭该意图的活动并打开(再次给他)最后一次活动。

总结:

屏幕上的当前活动:XActivity

打算使用XActivity的新通知。

用户单击通知,因此堆栈为XActivity,XActivity。

我如何检测XActivity是否已经显示并向其发送额外的内容?

谢谢!

最佳答案

将活动的启动模式设置为singleTop,然后以带有标志FLAG_ACTIVITY_NEW_TASK的意图启动它。如果活动未运行,它将启动活动,否则将使用正在运行的实例。

10-07 19:03