2014-06-16 108 views
3

我对iOS状态管理的理解是,当用户点击主页按钮时,应用程序变为不活动状态,然后进入后台,几秒钟后暂停。如果系统需要释放内存或用户将应用程序从最近列表中划出,则暂停的应用程序将被终止。如何判断我的应用程序是否已暂停?

我的问题是,有没有什么方法可以告诉我的应用程序已经离开后台状态并进入挂起状态?我知道应用程序委托方法,如applicationDidEnterBackground等,但有没有一种方法,我可以告诉应用程序被暂停?我是否正确地认为被暂停是而不是与终止相同?

问我这个问题的上下文是我正在创建一个音频播放器应用程序。我在Info.plist中启用了背景音频,因此当播放音频时,按下主页按钮我可以看到应用程序无限期地保持在后台(这很好)。但是,当音频不播放时,无需将应用程序保留在后台,并且据我了解,该应用程序应该暂停。我希望能够检查是否发生这种情况!

非常感谢 - 并纠正我的任何误解。

+0

已解决此问题,或者您还在等待答案? – Almo

回答

2

你没有得到有关被暂停通知:

https://developer.apple.com/library/ios/documentation/iphone/conceptual/iphoneosprogrammingguide/ManagingYourApplicationsFlow/ManagingYourApplicationsFlow.html

“暂停:该应用程序在后台,但没有执行代码,系统会自动移动应用程序,以这种状态和不在执行此操作前通知他们,虽然暂停,但应用程序仍保留在内存中,但不会执行任何代码

当发生低内存条件时,系统可能会清除暂停的应用程序,恕不另行通知,为前台应用程序腾出更多空间。 “

+1

我认为“警告”是错误的词。 – trojanfoe

+0

编辑,谢谢。 – Almo

+0

谢谢 - 所以我没有任何方法可以查看我的应用程序是否在背景中保持时间长于它应该保持的时间?有没有任何诊断工具可以让我找出应用程序是否被暂停? – ben

相关问题