說在前面:
5個狀態(tài):not runing 非運行腋舌;inactive :前臺非活動送矩;active:前臺活動澄暮;background:后臺狀態(tài)搅荞;suspended:掛起狀態(tài)
在狀態(tài)變化種,APP會回調(diào)AppDelegate中的相關(guān)方法幽污,并發(fā)出對應(yīng)通知嚷辅。
場景1:應(yīng)用啟動:
狀態(tài)變化:not runing ->inactive->active,在not runing->inactive過程中距误,調(diào)用didFinishLaunchingWithOptions,發(fā)出UIApplicationDidFinishLaunchingNotification通知
inactve->active:調(diào)用didBecomeActive簸搞,發(fā)出UIApplicationDidBecomeActiveNotification通知
場景2:應(yīng)用退出(點擊HOME鍵)
狀態(tài)變化1:可在后臺運行并掛起:active->inactive->background->suspended
active->inactive:回調(diào)WillResignActive并發(fā)出相應(yīng)通知
inactive->background:willEnterBackground
background->suspended:didEnterBackground 并發(fā)出相應(yīng)通知
狀態(tài)變化1:不可在后臺運行并掛起:active->inactive->background->suspended->not runing
active->inactive:回調(diào)WillResignActive并發(fā)出相應(yīng)通知
inactive->background:willEnterBackground
background->suspended:didEnterBackground 并發(fā)出相應(yīng)通知
suspended->not runing:willTerminate,并發(fā)出響應(yīng)通知
場景3:掛起被用戶喚醒
狀態(tài)變化:suspended->background->inactive->active
場景4:應(yīng)用終止
backbround->suspended->not runing