創(chuàng)建iOS工程的時(shí)候狼速,就會(huì)創(chuàng)建一個(gè)UIAppliaction的對(duì)象。代表當(dāng)前這個(gè)應(yīng)用程序,作用是用來觀察應(yīng)用程序狀態(tài)的改變,然后通知代理去針對(duì)這些狀態(tài)的改變做出相應(yīng)的反應(yīng)纽匙。
1.application()
程序啟動(dòng)成功之后會(huì)調(diào)用這個(gè)方法,這個(gè)方法是iOS程序的真正入口拍谐,iOS編程的實(shí)質(zhì)就是在實(shí)現(xiàn)這個(gè)方法
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
//搭建UI界面烛缔,請(qǐng)求數(shù)據(jù)、展示數(shù)據(jù)
print("程序啟動(dòng)成功")
return true
}
2.applicationWillResignActive()
應(yīng)用程序?qū)⒁兂煞腔钴S狀態(tài)的時(shí)候會(huì)調(diào)用這個(gè)方法(應(yīng)用程序不顯示在手機(jī)屏幕上的時(shí)候就是非活躍狀態(tài)轩拨,按HOME鍵讓程序在后臺(tái)運(yùn)行力穗、來電可以將應(yīng)用程序變成非活躍狀態(tài))
func applicationWillResignActive(application: UIApplication) {
//一般在這個(gè)方法中關(guān)閉定時(shí)器、暫停視頻/音頻的播放气嫁、讓游戲暫停
print("將要變成非活躍狀態(tài)")
}
3.applicationDidEnterBackground()
應(yīng)用程序已經(jīng)進(jìn)入后臺(tái)的時(shí)候會(huì)調(diào)用這個(gè)方法(在應(yīng)用程序打開的時(shí)候按HOME鍵才會(huì)進(jìn)入后臺(tái))
func applicationDidEnterBackground(application: UIApplication) {
print("已經(jīng)進(jìn)入后臺(tái)")
}
4.applicationWillEnterForeground()
應(yīng)用程序?qū)⒁M(jìn)入前臺(tái)(從后臺(tái)打開應(yīng)用程序的時(shí)候才算進(jìn)入前臺(tái))
func applicationWillEnterForeground(application: UIApplication) {
//根據(jù)情況去開啟定時(shí)器、繼續(xù)播放視頻/音頻够坐、繼續(xù)游戲寸宵。崖面。。
print("將要進(jìn)入前臺(tái)")
}
5.applicationDidBecomeActive()
應(yīng)用程序已經(jīng)變成活躍狀態(tài)(從后臺(tái)回到前臺(tái)梯影、來電打斷結(jié)束就會(huì)從非活躍狀態(tài)變成活躍狀態(tài))
func applicationDidBecomeActive(application: UIApplication) {
print("已經(jīng)變成活躍狀態(tài)")
}
6.applicationWillTerminate()
應(yīng)用程序?qū)⒁K止的時(shí)候回調(diào)這個(gè)方法(一般情況下巫员,只有從后臺(tái)強(qiáng)制將應(yīng)用程序退出的時(shí)候,程序才會(huì)終止)
func applicationWillTerminate(application: UIApplication) {
//讓應(yīng)用程序不能再后臺(tái)運(yùn)行:在info.plist文件中添加key為“Application does not run in backgroudn”甲棍,值為YES的鍵值對(duì)
print("應(yīng)用程序?qū)⒁K止")
}