消息推送的幾個(gè)函數(shù)

方法介紹:

一、

方法名:- (void)application:(UIApplication*)application didReceiveRemoteNotification:(NSDictionary*)userInfo

參數(shù)說明:application當(dāng)前應(yīng)用程序。? ? userInfo遠(yuǎn)程推送的消息內(nèi)容集合

調(diào)用說明:APP處于前臺(tái)時(shí)候,遠(yuǎn)程消息到達(dá),會(huì)調(diào)用該方法。

APP處于后臺(tái)時(shí),點(diǎn)擊系統(tǒng)的消息提示框進(jìn)入APP,會(huì)觸發(fā)此函數(shù)。

APP處于被殺死狀態(tài)時(shí)候,點(diǎn)擊系統(tǒng)的消息提示框或者APP圖標(biāo)進(jìn)入APP,系統(tǒng)會(huì)將遠(yuǎn)程消息的內(nèi)容集成到- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions函數(shù)的launchOptions中。

函數(shù)總結(jié):該函數(shù)會(huì)接受遠(yuǎn)程消息推送,并且在IOS10以后被作廢。

二、

方法名:- (void)application:(UIApplication*)applicationdidReceiveLocalNotification:(UILocalNotification*)notification;

參數(shù)說明:application當(dāng)前應(yīng)用程序。? ? notification本地通知的消息內(nèi)容集合

調(diào)用說明:APP處于前臺(tái)時(shí)候,本地通知觸發(fā),會(huì)調(diào)用該方法。

APP處于后臺(tái)或者被殺死的時(shí)候,系統(tǒng)會(huì)彈出提示框,點(diǎn)擊系統(tǒng)的消息提示框或者APP圖標(biāo)進(jìn)入APP,系統(tǒng)會(huì)將本地通知的內(nèi)容集成到- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions函數(shù)的launchOptions中。

函數(shù)總結(jié):該函數(shù)會(huì)接受本地通知,并且在IOS10以后被作廢。

三、

方法名:- (void)application:(UIApplication*)applicationdidReceiveRemoteNotification:(NSDictionary*)userInfo fetchCompletionHandler:(void(^)(UIBackgroundFetchResultresult))completionHandler;

參數(shù)說明:application當(dāng)前應(yīng)用程序。? ? userInfo遠(yuǎn)程推送的消息內(nèi)容集合。? ? completionHandler告訴系統(tǒng)我已處理完自己的事件。

調(diào)用說明:APP處于前臺(tái)時(shí)候,遠(yuǎn)程消息到達(dá),會(huì)調(diào)用該方法。

APP處于后臺(tái)或者被殺死的狀態(tài)下會(huì)走這么一個(gè)流程圖:

圖片發(fā)自簡(jiǎn)書App


函數(shù)總結(jié):APP處于前臺(tái)后臺(tái)或者被殺死,遠(yuǎn)程消息到達(dá)后,該函數(shù)都會(huì)觸發(fā)。但是不同狀態(tài)下,該函數(shù)觸發(fā)的次數(shù)不同。

另外,如果該函數(shù)和- (void)application:(UIApplication*)application didReceiveRemoteNotification:(NSDictionary*)userInfo同時(shí)實(shí)現(xiàn)時(shí)候,該函數(shù)起作用,另一個(gè)被作廢。

四、

方法名:- (void)userNotificationCenter:(UNUserNotificationCenter*)center willPresentNotification:(UNNotification*)notification withCompletionHandler:(void(^)(UNNotificationPresentationOptionsoptions))completionHandler;

參數(shù)說明:center通知中心。? ? notification遠(yuǎn)程或者本地通知的消息內(nèi)容集合。? ? completionHandler控制通知的顯示方式。

調(diào)用說明:APP處于前臺(tái)時(shí)候,遠(yuǎn)程或者本地通知觸發(fā),會(huì)調(diào)用該方法。

五、

方法名:- (void)userNotificationCenter:(UNUserNotificationCenter*)center didReceiveNotificationResponse:(UNNotificationResponse*)response withCompletionHandler:(void(^)(void))completionHandler;

參數(shù)說明:center通知中心。? ? response遠(yuǎn)程或者本地通知的消息內(nèi)容集合+用戶做出的選擇。? ? completionHandler根據(jù)用戶的操作做出APP相應(yīng)的響應(yīng)后,通過此 回調(diào)告訴系統(tǒng),我已處理完用戶的響應(yīng)。

調(diào)用說明:APP處于后臺(tái)或者被殺死的時(shí)候,遠(yuǎn)程或者本地通知觸發(fā),會(huì)調(diào)用該方法。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 不同版本極光推送SDK集成各有差異,集成時(shí)一定要注意版本號(hào),樓主已將博文更新成最新的SDK JPush v3.0....
    i順頌時(shí)宜閱讀 7,903評(píng)論 37 170
  • 推送通知 注意:這里說的推送通知跟NSNotification有所區(qū)別 NSNotification是抽象的,不可...
    iOS開發(fā)攻城獅閱讀 4,340評(píng)論 1 13
  • 極光推送: 1.JPush當(dāng)前版本是1.8.2,其SDK的開發(fā)除了正常的功能完善和擴(kuò)展外也緊隨蘋果官方的步伐,SD...
    Isspace閱讀 6,778評(píng)論 10 16
  • 推送通知注意:這里說的推送通知跟NSNotification有所區(qū)別NSNotification是抽象的,不可見的...
    醉葉惜秋閱讀 1,540評(píng)論 0 3
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,924評(píng)論 18 139