你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> iOS之點擊通知欄的通知進入程序的觸發事件

iOS之點擊通知欄的通知進入程序的觸發事件

編輯:IOS開發綜合

 

點擊通知欄的通知進入程序時,會觸發App Delegate裡的方法,分為以下兩種情況:

 

1、程序未啟動(即底部任務欄裡沒有進程)時:
此種情況下,點擊通知欄的通知進入程序,會觸發以下方法

  - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  

對於launchOptions參數,需要經過以下處理: 

  NSDictionary* pushNotificationKey = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];  

   其中的pushNotificationKey才是從服務端推送過來的數據,使用鍵值對方式就可以讀取服務器傳遞過來的額外參數了。

 

應用還沒有加載,這時如果點擊通知的顯示按鈕,會調用didFinishLaunchingWithOptions,不會調用didReceiveRemoteNotification方法。如果點擊通知的關閉按鈕,再點擊應用,只會調用didFinishLaunchingWithOptions方法。

 

2、程序已啟動:
如果程序已經啟動,並駐留在內存中,不管程序是在前台(Foreground)還是在後台(Background),如果點擊通知欄的通知進入程序將觸發以下方法:

  - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo  

   其中的userInfo參數,就已經是服務端推送過來的數據,也是采用鍵值對方式進行讀取。



如果點擊關閉再點擊應用,則上面兩個方法都不會被調用這時,只能在applicationWillEnterForeground或者applicationDidBecomeActive,根據發過來通知中的badge進行判斷是否有通知,然後發請求獲取數據



 

【iOS之點擊通知欄的通知進入程序的觸發事件】的相關資料介紹到這裡,希望對您有所幫助! 提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved