2011-12-27 69 views
20

我希望找到一种方法来查看前台正在运行的应用程序,或者当我的应用程序显示本地通知时显示主屏幕。例如,如果主屏幕或其他应用程序中存在不同的操作,我想要采取不同的操作。 我试图使用已处理和pid,但是pid是在应用程序启动时生成的,而不是上次使用该应用程序的时间。 有什么想法? 感谢确定iOS上收到通知时是否在前台运行应用程序

回答

49

正如push notification documentation描述你可以阅读[[UIApplication sharedApplication] applicationState]当您收到通知,以确定您的应用程序是否在前台,无效(它是可见的,但像无线选配一个对话框,在前面),或者在后台。

+0

我想知道,如果anither应用在像相机或iPod前台运行或指出 – user1117453 2011-12-27 12:59:00

+0

所以,做我的答案的一部分,你必须麻烦?如果你阅读'[[UIApplication sharedApplication] applicationState]',它会告诉你你的应用程序是否为前景。 – DarkDust 2011-12-27 13:07:49

+0

是的。这是为我的应用程序。我现在到底应该是什么样的应用程序?IF是Camera还是Appstore应用程序? – user1117453 2011-12-27 14:26:38

9

正好有他人提供一个复制粘贴代码:

if([[UIApplication sharedApplication] applicationState] == UIApplicationStateActive) 
{ 
    //App is in foreground. Act on it. 
} 
+0

p1us 0ne for copy paste – quemeful 2017-04-19 18:17:27

相关问题