创建iOS工程的时候,就会创建一个UIAppliaction的对象。代表当前这个应用程序,作用是用来观察应用程序状态的改变,然后通知代理去针对这些状态的改变做出相应的反应。
1.application()
程序启动成功之后会调用这个方法,这个方法是iOS程序的真正入口,iOS编程的实质就是在实现这个方法
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
//搭建UI界面,请求数据、展示数据
print("程序启动成功")
return true
}
2.applicationWillResignActive()
应用程序将要变成非活跃状态的时候会调用这个方法(应用程序不显示在手机屏幕上的时候就是非活跃状态,按HOME键让程序在后台运行、来电可以将应用程序变成非活跃状态)
func applicationWillResignActive(application: UIApplication) {
//一般在这个方法中关闭定时器、暂停视频/音频的播放、让游戏暂停
print("将要变成非活跃状态")
}
3.applicationDidEnterBackground()
应用程序已经进入后台的时候会调用这个方法(在应用程序打开的时候按HOME键才会进入后台)
func applicationDidEnterBackground(application: UIApplication) {
print("已经进入后台")
}
4.applicationWillEnterForeground()
应用程序将要进入前台(从后台打开应用程序的时候才算进入前台)
func applicationWillEnterForeground(application: UIApplication) {
//根据情况去开启定时器、继续播放视频/音频、继续游戏。。。
print("将要进入前台")
}
5.applicationDidBecomeActive()
应用程序已经变成活跃状态(从后台回到前台、来电打断结束就会从非活跃状态变成活跃状态)
func applicationDidBecomeActive(application: UIApplication) {
print("已经变成活跃状态")
}
6.applicationWillTerminate()
应用程序将要终止的时候回调这个方法(一般情况下,只有从后台强制将应用程序退出的时候,程序才会终止)
func applicationWillTerminate(application: UIApplication) {
//让应用程序不能再后台运行:在info.plist文件中添加key为“Application does not run in backgroudn”,值为YES的键值对
print("应用程序将要终止")
}