IOS applicationWillResignActive掛起

來源:互聯網
上載者:User

標籤:term   nbsp   ict   ica   rbac   前台   nat   委託   err   

一、掛起
 
當有電話進來或者鎖屏,這時你的應用程會掛起,在這時,UIApplicationDelegate委託會收到通知,調用 applicationWillResignActive 方法,你可以重寫這個方法,做掛起前的工作,比如關閉網路,儲存資料。
 


C代碼  
 1. - (void)applicationWillResignActive:(UIApplication*)application{    
2.     
3. }    
   
當你的程式被掛起後他不會在後台運行。
 
 
 
二、複原
 
當程式複原時,另一個名為 applicationDidBecomeActive 委託方法會被調用,在此你可以通過之前掛起前儲存的資料來恢複你的應用程式:
 


C代碼  
 1. - (void)applicationDidBecomeActive:(UIApplication*)application{    
2.     
3. }    
   
注意:應用程式在啟動時,在調用了 applicationDidFinishLaunching 方法之後也會調用 applicationDidBecomeActive 方法,所以你要確保你的代碼能夠分清複原與啟動,避免出現邏輯上的bug。
 
 
 
三、終止
 
當使用者按下按鈕,或者關機,程式都會被終止。當一個程式將要正常終止時會調用 applicationWillTerminate方法。但是如果長主按鈕強制退出,則不會調用該方法。這個方法該執行剩下的清理工作,比如所有的串連都能正常關閉,並在程式退出前執行任何其他的必要的工作:
 


C代碼  
 1. - (void)applicationWillTerminate:(UIApplication*)application{    
2.     
3. }    
   

 

1. - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  
2. {  
3.     // Override point for customization after application launch.  
4.     NSLog(@"\n ===> 程式開始 !");   
5.       
6.     return YES;  
7. }  
8.                               
9. - (void)applicationWillResignActive:(UIApplication *)application  
10. {  
11.       
12.     NSLog(@"\n ===> 程式暫行 !");   
13. }  
14.   
15. - (void)applicationDidEnterBackground:(UIApplication *)application  
16. {  
17.       
18.      NSLog(@"\n ===> 程式進入後台 !");   
19. }  
20.   
21. - (void)applicationWillEnterForeground:(UIApplication *)application  
22. {  
23.       
24.      NSLog(@"\n ===> 程式進入前台 !");   
25. }  
26.   
27. - (void)applicationDidBecomeActive:(UIApplication *)application  
28. {  
29.     NSLog(@"\n ===> 程式重新啟用 !");   
30.       
31. }  
32.   
33. - (void)applicationWillTerminate:(UIApplication *)application  
34. {  
35.     NSLog(@"\n ===> 程式意外暫行 !");   
36.   
37.     UIDevice *device = [UIDevice currentDevice];  
38.       
39. }  
   
首次運行:
 
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
 
- (void)applicationDidBecomeActive:(UIApplication *)application
 
 
 
首次關閉(home):
 
- (void)applicationWillResignActive:(UIApplication *)application
 
- (void)applicationDidEnterBackground:(UIApplication *)application
 
 
 
再次運行:
 
- (void)applicationWillEnterForeground:(UIApplication *)application
 
- (void)applicationDidBecomeActive:(UIApplication *)application
 
 
 
再次關閉:
 
- (void)applicationWillResignActive:(UIApplication *)application
 
- (void)applicationDidEnterBackground:(UIApplication *)application

 

IOS applicationWillResignActive掛起

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.