ios生命週期

  • – application:didFinishLaunchingWithOptions:    當程序載入後執行
  • – applicationDidBecomeActive:           當應用程序入活動狀態執行
  • – applicationWillResignActive:            當應用程序將要入非活動狀態執行,在此期間,應用程序不接收消息或事件,比如來電話了
  • – applicationDidEnterBackground:     當程序被推送到後臺的時候調用。所以要設置後臺繼續運行,則在這個函數裏面設置即可 
  • – applicationWillEnterForeground:     當程序從後臺將要重新回到前臺時候調用
  • – applicationWillTerminate:                  當程序將要退出是被調用,通常是用來保存數據和一些退出前的清理工作。這個需要要設置                                                                  UIApplicationExitsOnSuspend的鍵值

step 1,點擊 app icon 或者從應用程序url(比如在Safari地址欄中輸入應用程序url)啓動應用程序。

step 2,就會進入 UIApplicationDelegate 的

- (void)applicationDidFinishLaunching:(UIApplication *)application;或 
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;
step 3, 如果是從 url 啓動的則先進入 UIApplicationDelegate 的
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url;
然後再跳轉到step 4;否則直接跳轉到step 4;
step 4,進入 UIApplicationDelegate 的
- (void)applicationDidBecomeActive:(UIApplication *)application;
step 5,進入應用程序主循環,這時應用程序已經是活動的了,用戶可以與應用程序交互。
step 6,在 step 5 狀態下,如果按住 home 鍵或者進行任務切換操作,然後跳轉到 step 8;
step 7,在 step 5 狀態下,應用程序被中斷(如來電,來短信),進入 UIApplicationDelegate 的
- (void)applicationWillResignActive:(UIApplication *)application;
如果用戶選擇不處理繼續留在當前應用程序,則回到 step 4;如果用戶選擇處理,則跳轉到 step 8;
step 8,進入 UIApplicationDelegate 的
- (void)applicationWillTerminate:(UIApplication *)application;
當前應用程序關閉。




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章