iOS应用程序生命周期各个函数方法详解

来源:互联网 发布:统计贸易数据自查报告 编辑:程序博客网 时间:2024/04/30 20:03
  1. - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  
  2. {  
  3.     self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];  
  4.     // Override point for customization after application launch.  
  5.     self.window.backgroundColor = [UIColor whiteColor];  
  6.     [self.window makeKeyAndVisible];  
  7.     NSLog(@"iOS_didFinishLaunchingWithOptions");  
  8.     return YES;  
  9. }  
  10.   
  11. - (void)applicationWillResignActive:(UIApplication *)application  
  12. {  
  13.     // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.  
  14.     // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.  
  15.     NSLog(@"iOS_applicationWillResignActive");  
  16.   
  17. }  
  18.   
  19. - (void)applicationDidEnterBackground:(UIApplication *)application  
  20. {  
  21.     // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.   
  22.     // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.  
  23.     NSLog(@"iOS_applicationDidEnterBackground");  
  24.   
  25. }  
  26.   
  27. - (void)applicationWillEnterForeground:(UIApplication *)application  
  28. {  
  29.     // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.  
  30.     NSLog(@"iOS_applicationWillEnterForeground");  
  31.   
  32. }  
  33.   
  34. - (void)applicationDidBecomeActive:(UIApplication *)application  
  35. {  
  36.     // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.  
  37.     NSLog(@"iOS_applicationDidBecomeActive");  
  38.   
  39. }  
  40.   
  41. - (void)applicationWillTerminate:(UIApplication *)application  
  42. {  
  43.     // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.  
  44.     NSLog(@"iOS_applicationWillTerminate");  
  45.   
  46. }  

  1、application didFinishLaunchingWithOptions:当应用程序启动时执行,应用程序启动入口,只在应用程序启动时执行一次。若用户直接启动,lauchOptions内无数据,若通过其他方式启动应用,lauchOptions包含对应方式的内容。

     2、applicationWillResignActive:在应用程序将要由活动状态切换到非活动状态时候,要执行的委托调用,如 按下 home 按钮,返回主屏幕,或全屏之间切换应用程序等。

     3、applicationDidEnterBackground:在应用程序已进入后台程序时,要执行的委托调用。

     4、applicationWillEnterForeground:在应用程序将要进入前台时(被激活),要执行的委托调用,刚好与applicationWillResignActive 方法相对应。

     5、applicationDidBecomeActive:在应用程序已被激活后,要执行的委托调用,刚好与applicationDidEnterBackground 方法相对应。

     6、applicationWillTerminate:在应用程序要完全推出的时候,要执行的委托调用,这个需要要设置UIApplicationExitsOnSuspend的键值。 

     

初次启动:

2013-05-24 20:20:31.550 LifeIOS[451:c07] iOS_didFinishLaunchingWithOptions

2013-05-24 20:20:31.551 LifeIOS[451:c07] iOS_applicationDidBecomeActive

按下home键:

2013-05-24 20:22:17.349 LifeIOS[451:c07] iOS_applicationWillResignActive

2013-05-24 20:22:17.350 LifeIOS[451:c07] iOS_applicationDidEnterBackground

点击程序图标进入:

2013-05-24 20:22:56.913 LifeIOS[451:c07] iOS_applicationWillEnterForeground

2013-05-24 20:22:56.914 LifeIOS[451:c07] iOS_applicationDidBecomeActive



0 0
原创粉丝点击