AppDelegate的生命周期

創(chuàng)建iOS工程的時候,就會創(chuàng)建一個UIAppliaction的對象。代表當前這個應用程序,作用是用來觀察應用程序狀態(tài)的改變,然后通知代理去針對這些狀態(tài)的改變做出相應的反應。
1.application()
程序啟動成功之后會調(diào)用這個方法,這個方法是iOS程序的真正入口,iOS編程的實質(zhì)就是在實現(xiàn)這個方法

 func application(application: UIApplication,   didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
      //搭建UI界面,請求數(shù)據(jù)、展示數(shù)據(jù)
      print("程序啟動成功")
      return true
}

2.applicationWillResignActive()
應用程序?qū)⒁兂煞腔钴S狀態(tài)的時候會調(diào)用這個方法(應用程序不顯示在手機屏幕上的時候就是非活躍狀態(tài),按HOME鍵讓程序在后臺運行、來電可以將應用程序變成非活躍狀態(tài))

func applicationWillResignActive(application: UIApplication) {
    //一般在這個方法中關閉定時器、暫停視頻/音頻的播放、讓游戲暫停
    print("將要變成非活躍狀態(tài)")
}

3.applicationDidEnterBackground()
應用程序已經(jīng)進入后臺的時候會調(diào)用這個方法(在應用程序打開的時候按HOME鍵才會進入后臺)

  func applicationDidEnterBackground(application: UIApplication) {
    print("已經(jīng)進入后臺")
}

4.applicationWillEnterForeground()
應用程序?qū)⒁M入前臺(從后臺打開應用程序的時候才算進入前臺)

func applicationWillEnterForeground(application: UIApplication) {
    //根據(jù)情況去開啟定時器、繼續(xù)播放視頻/音頻、繼續(xù)游戲。。。
    print("將要進入前臺")
}

5.applicationDidBecomeActive()
應用程序已經(jīng)變成活躍狀態(tài)(從后臺回到前臺、來電打斷結束就會從非活躍狀態(tài)變成活躍狀態(tài))

  func applicationDidBecomeActive(application: UIApplication) {
    print("已經(jīng)變成活躍狀態(tài)")
}

6.applicationWillTerminate()
應用程序?qū)⒁K止的時候回調(diào)這個方法(一般情況下,只有從后臺強制將應用程序退出的時候,程序才會終止)

 func applicationWillTerminate(application: UIApplication) {
    //讓應用程序不能再后臺運行:在info.plist文件中添加key為“Application does not run in backgroudn”,值為YES的鍵值對
    print("應用程序?qū)⒁K止")
}
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容