APP的生命历程

参考博客
作者:林大鹏天地
链接:http://www.cocoachina.com/ios/20180509/23326.html

图片引自网上,侵删.png

1、程序入口

通过main()函数,设置AppDelegate称为函数的代理

C2744EC8-C74A-4CAF-A1D3-0CA077ED630B.png

2、程序加载完成

[AppDelegate application:didFinishLaunchingWithOptions:]

3、创建window窗口

4、程序被激活

[AppDelegate applicationDidBecomeActive:]

5、当点击Home键时

程序取消激活状态
  • [AppDelegate applicationWillResignActive:]
    类似当有电话或短信进来或者锁屏等情况下,这时应用程序挂起进入非活动状态,也就是手机界面依然显示着你当前的应用程序的窗口,只不过是被别的任务强制占用了,当然,也可能是即将进入后台状态(因为要先进入非活动状态然后再进入后台状态)
程序进入后台

[AppDelegate applicationDidEnterBackground:]

  • 指当前窗口不是你的App,大多数程序进入这个后台会在这个状态上停留一会儿,时间到了之后会进入挂起状态(Suspended)。如果你的程序特殊处理后可以长期处于后台状态也可以运行。挂起的程序还是会停留在内存中,但是不能执行代码,且当系统内存低时,系统会把挂起的程序清除掉,为前台程序提供更多的内存。

6、程序进入工程

程序进入前台

[AppDelegate applicationWillEnterForeground:]

程序被激活

[AppDelegate applicationDidBecomeActive:]

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容