您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“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之如何實現點擊通知欄進入程序的觸發事件”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。