iPhone应用程序的生命周期是什么?

84

有人能解释一下iPhone的生命周期过程吗?即应用程序从开始到结束的生命周期。


我找到了一篇关于应用程序生命周期的文章,其中有很好的解释,请参考下面的文档。我希望它能对其他人有所帮助。http://www.codeproject.com/KB/iPhone/ApplicationLifeCycle.aspx - Santusura8
http://www.codeproject.com/Articles/121681/Application-s-Life-Cycle-in-iOS4 - Anand
4个回答

125

另外可以参考Cocoanetics的这篇文章, 文章中有一张非常有用的流程图,解释了在应用程序生命周期中AppDelegate方法的不同调用:

UIApplication Delegate messaging flowchart


这对于iOS5仍然有效吗? - James Mertz
@KronoS - 是的,这个情况只有在iOS 4.0引入多任务处理时才发生了显著变化。截至iOS 5.0,它仍然是可行的(并且应该在iOS 6.0中继续保持可行)。 - Brad Larson
1
苹果公司/ iOS 不会发送 applicationWillTerminate 消息。当操作系统想要释放内存时,你将只会收到一个 SIGTRM 信号。文档已经损坏多年了。 - jww
iOS确实会发送applicationWillTerminate消息,但仅在图表中解释的情况下,即如果您使用的是SDK<4(这种情况现在不可能发生),或者如果您在应用程序的Info.plist中将UIApplicationExitsOnSuspend设置为YES。因此,该图表仍然是正确的 ;) - AliSoftware

115

这里是一个图示,用于了解生命周期 (iPhone / Android)。

图示


编辑:这里有更详细的信息,来自Apple文档

部分1:

图示

部分2:

图示

参考链接

此外,这个用于视图控制器的生命周期方法

图示


有没有类似这样的图表,但使用applicationDid|Will方法? - Keale
@Keale,请查看官方页面,其中包含所有信息和图表。 - swiftBoy
苹果的参考链接已经失效。这里是更新后的链接:应用程序生命周期启动周期 - rmp251

20

在iOS开发者手册中还有一个更简单的方法。

图片描述


2

iOS 9更新的应用程序生命周期:https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/TheAppLifeCycle/TheAppLifeCycle.html - samira riazati

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接