0

我很难找到真正的解决方案。我查了很多,但找不到任何好的解决方案问题。如何查找App是否在运行,如果App正在运行,那么如何找到前面的活动

我想在用户点击通知时执行一些操作。所以我必须检查应用程序是在后台还是在前台。如果它在前台,那么哪个活动正在运行?必须有简单的方法来找到它。

请指导我this.Any帮助将不胜感激。

+1

“所以我必须检查应用程序是否在后台或前台” - 为什么? – CommonsWare

+0

@CommonsWare:因为如果应用程序在后台,然后显示通知,否则显示alert.So .. – Ponting

回答

1

因为如果应用程序在后台则显示通知,否则显示警告。

然后你不在乎“无论是在背景或前景的应用程序”或“如果是在前台然后活动运行”。

您只需在意事件发生时,前台UI处理它(如果有前景UI),或者您显示Notification

一种方法是在几年前使用有序广播,如I blogged about。这是一个示例应用程序,演示了这一点。基本上,服务(?)发送一个有序的广播。当用户界面处于前台时,UI具有高优先级的接收器,并中止广播并消费该事件。您还有一个低优先级的接收器,只有在用户界面没有使用该事件时才会得到控制权,该接收器将显示Notification

+0

好的解决方案,我保留下次。 –

相关问题