在iOS10+ Swift3.0语言中,协议UIApplicationDelegate定义了iOS App的生命周期。 在程序运行时UIApplication实例对象是单例的, 即静态变量UIApplication.shared。 其它进程或者iOS系统都是通过UIApplicationDelegate的接口函数与当前进程交互。
苹果文档里说app进程分为5种状态:
1、 Not running 未运行, 即应用尚未被启动。
2、 Inactive 未激活,app在前台运行(即显示ViewController界面)但不响应系统事件,但可以运行代码。
3、 Active 活跃, app在前台运行并响应系统事件, 用户正在操作的app都是这个状态。
4、 Background 后台, app进程没有可见的界面,用户点击home键后便进入这个状态;也可能是由系统事件将进程从挂起状态变为后台状态;
5、 Su