iOS推送通知處理

1. App關(guān)閉時(shí)接收到他推送通知,通過(guò)點(diǎn)擊推送通知來(lái)啟動(dòng)App

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

在程序啟動(dòng)完成后,在此方法中可以得到推送通知的類容,此處又分為遠(yuǎn)程通知和本地通知的區(qū)別。

遠(yuǎn)程通知
NSDictionary *userInfo = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
本地通知
UILocalNotification *localNoti = [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey];
NSDictionary * userInfo = localNoti.userInfo;

這里,為了讓主界面先加載完成,一般需要延遲一小段時(shí)間后再去處理推送通知,push出相應(yīng)的響應(yīng)頁(yè)面等。

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
                [self didReceiveNotification:userInfo];
            });

2.App正在運(yùn)行時(shí)接收到推送通知

遠(yuǎn)程通知
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo;
本地通知
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification;
App狀態(tài)
    UIApplicationStateActive, // 激活狀態(tài),用戶正在使用App
    UIApplicationStateInactive, // 不激活狀態(tài),用戶切換到其他App、按Home鍵回到桌面、拉下通知中心
    UIApplicationStateBackground // 在后臺(tái)運(yùn)行

根據(jù)application.applicationState的狀態(tài),判斷執(zhí)行哪種動(dòng)作。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 極光推送: 1.JPush當(dāng)前版本是1.8.2,其SDK的開(kāi)發(fā)除了正常的功能完善和擴(kuò)展外也緊隨蘋果官方的步伐,SD...
    Isspace閱讀 6,887評(píng)論 10 16
  • 推送通知注意:這里說(shuō)的推送通知跟NSNotification有所區(qū)別NSNotification是抽象的,不可見(jiàn)的...
    醉葉惜秋閱讀 1,623評(píng)論 0 3
  • 推送通知 注意:這里說(shuō)的推送通知跟NSNotification有所區(qū)別 NSNotification是抽象的,不可...
    iOS開(kāi)發(fā)攻城獅閱讀 4,423評(píng)論 1 13
  • 寫作原因:網(wǎng)上看了很多推送文章都沒(méi)有完美的解答我的疑惑;主要有以下兩點(diǎn),1:推送來(lái)了我點(diǎn)擊應(yīng)用圖標(biāo)進(jìn)入應(yīng)用怎么取到...
    Thebloodelves閱讀 4,655評(píng)論 26 71
  • 有時(shí)候我會(huì)懷疑,好人是不是有好報(bào)。 累了,看了那么多生死離別。最后我還是不信因果報(bào)應(yīng)。 不多說(shuō)了,就這樣吧。也許是...
    lilyzuo閱讀 277評(píng)論 0 2

友情鏈接更多精彩內(nèi)容