APP的生命历程

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

APP的生命历程_第1张图片
图片引自网上,侵删.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:]

你可能感兴趣的:(APP的生命历程)