應用程序的生命周期:appdelegate每個方法的介紹


一。appdelegate每個方法的簡單介紹:
 
1、應用程序啟動,並進行初始化時候調用該方法:aaaplication:didFimnishLanuchingWithOptions:
 
2、應用進入前台並處於活動狀態時候調用:applicationDidBecomeActive:
 
3、應用從活動狀態進入到非活動狀態:applicationWillResignActive :
 
4、應用進入到后台時候調用的方法:applicationDidEnterBackground:
 
5、應用進入到前台時候調用的方法:appplicationWillEnterForeground:
 
6、applicationWillTeminate:應用被終止的狀態:
 
二。配合場景,什么時候會調用上面的什么組合
 
第一種場景:程序開啟,到能使用;
 
就是:沒有運行(NOT RUNNING)------->沒有激活(INACTIVE) ------>激活( ACTIVE)
這個過程會調用的方法和發出的通知有:
 
過程1:沒有運行(NOT RUNNING)------->沒有激活(INACTIVE);
這個過程會調用aaaplication:didFimnishLanuchingWithOptions:方法,發出 UIApplicationDidFinishLaunchingNotification通知;
 
過程2:沒有激活(INACTIVE) ------>激活( ACTIVE)
這個過程會調用applicationDidBecomeActive:方法,發出 UIApplicationDidBecomeActiveNOtification通知;
附上一個簡單的圖:
總結:
1.從這個過程我們就知道,appdelegate的每個方法會對應一個通知,沒當調用那個方法的時候,就會發出那個方法對應的通知;
2.下面的幾個場景,我就不一一說明,直接貼圖了;
3.再貼圖之前,先把appdelegate每個方法對應的通知都貼出來;
方法 本地通知
aaaplication:didFimnishLanuchingWithOptions: UIApplicationDidFinishLaunchingNotification
applicationDidBecomeActive UIApplicationDidBecomeActiveNOtification
applicationWillResignActive  UIApplicationWillResignActiveNotification
applicationDidEnterBackground UIApplicationDidEnterBackgroundNotification
appplicationWillEnterForeground UIApplicationwillEnterForegroundNotification
applicationWillTeminate UIApplicationWillTeminateNotification
 
 
第二種場景:點擊Home鍵---程序掛起或者進入后台;(一種是退到后台,沒有退出程序;一種是退到后台,且退出程序)
這里分兩種情況:
情況1:點擊home鍵,退到后台掛起(默認情況);注意:掛起狀態會占用內存;
 
情況2:點擊home鍵之后,退到后台,直接終止;
注意:默認的情況下,程序進入后台是不會終止程序的;如果要做到可以退出程序,到plist文件修改一下的值:
找到Application does not run in backgroud設置為yes,在文件中保存的鍵應該是UIApplicationExitsOnSuspend設置為Yes。
 
第三種場景:掛起的程序重新運行
注意:application:didFinishLaunchingWithOptions:這個方法只會在程序初始化的時候才會被調用,而且只調用一次;
所以這里不會調用didFinishLaunchingWithOptions這個方法;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM