检测应用程序状态

时间:2010-08-16 12:42:10

标签: iphone multitasking

我想检测应用程序状态并将其发送到服务器。在具有多任务处理的新OS4中,有一些方法可用于帮助检测状态:

  • 应用中:didFinishLaunchingWithOptions:
  • applicationDidBecomeActive:
  • applicationWillResignActive:
  • applicationDidEnterBackground:
  • applicationWillEnterForeground:
  • applicationWillTerminate:

我现在读到了,我们必须使用applicationDidEnterBackground而不是applicationWillTerminate。我的问题是我需要他们两个。

当用户将应用程序发送到后台时,状态为sleep。但是当用户关闭应用程序(从多任务栏)时,状态将关闭。因此,当用户将应用程序发送到后台以及用户(或系统)关闭它时,我需要检测两者。

无论如何还是有办法解决这个问题吗?

我尝试订阅UIApplicationWillTerminateNotification,但它不起作用。

感谢您的建议。

1 个答案:

答案 0 :(得分:1)

应用程序将退出通知不再在iOS 4上被触发(因为我被引导相信)。

当用户点击主页按钮时,应用程序将被发送到后台,您将获得输入后台通知。但是当用户从多任务栏关闭应用程序时,或者系统关闭它时,会向应用程序发送SIGKIL消息并立即退出,不会发出通知或委派方法。