iOS點擊推送消息跳到應(yīng)用指定頁面方法
現(xiàn)在的推送用的越來越頻繁,幾乎每個應(yīng)用都開始用到了。其實又有幾個用戶會去看推送消息呢?沒辦法,產(chǎn)品經(jīng)理最大啊,只是苦了我們這一幫程序員??!閑話少說,進(jìn)入正題。兄弟我用的是極光推送,自然是以極光推送為例了。
現(xiàn)在點擊推送消息,有兩種跳轉(zhuǎn)方式:1.打開應(yīng)用,跳轉(zhuǎn)到應(yīng)用首頁;2.打開應(yīng)用,跳轉(zhuǎn)到指定頁面。
第一種,你什么都不用設(shè)置,只要注冊極光應(yīng)用就可以。這里就不寫怎么注冊極光應(yīng)用了,可以參考官方文檔,寫的很詳細(xì)。
第二種,重頭戲來了。
// APP未運行時獲取通知的內(nèi)容 remoteNotification就是你們服務(wù)器發(fā)送的推送的內(nèi)容 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ NSDictionary *remoteNotification = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey]; // 如果remoteNotification不為空,代表有推送發(fā)過來,以下類似 if (remoteNotification) { // 把應(yīng)用右上角的圖標(biāo)去掉 這個最好寫上,要不然強(qiáng)迫癥會瘋的 [UIApplication sharedApplication].applicationIconBadgeNumber = 0; // 發(fā)通知 [self performSelector:@selector(發(fā)送通知的方法,以下相同)withObject:remoteNotification afterDelay:1]; } } // 程序運行時接收推送 userInfo就是你們服務(wù)器發(fā)送的推送的內(nèi)容 - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { // Required [APService handleRemoteNotification:userInfo]; if (userInfo) { [UIApplication sharedApplication].applicationIconBadgeNumber = 0; // 發(fā)通知, 通知內(nèi)容就是userInfo 你可以打印一下 } } - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler { // IOS 7 Support Required [APService handleRemoteNotification:userInfo]; completionHandler(UIBackgroundFetchResultNewData); if (userInfo){ // 發(fā)通知 } }
以上的三個方法,可以讓你接收到服務(wù)器發(fā)過來的推送內(nèi)容,在主線程中發(fā)通知,否則接收不到。如果你想讓應(yīng)用跳轉(zhuǎn)到首頁的詳情頁
- (void)viewDidLoad{ // 添加觀察者 讓程序執(zhí)行跳轉(zhuǎn)到詳情頁的方法 }
如果你想讓應(yīng)用跳轉(zhuǎn)到第三頁的詳情頁 在發(fā)送通知的方法中加上:
_tabBarViewController.selectedIndex = 2;
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
iOS 仿微博客戶端紅包加載界面 XLDotLoading效果
這篇文章主要介紹了iOS 仿微博客戶端紅包加載界面 XLDotLoading,需要的朋友可以參考下2017-02-02iOS應(yīng)用設(shè)計模式開發(fā)中職責(zé)鏈(責(zé)任鏈)模式的實現(xiàn)解析
這篇文章主要介紹了iOS應(yīng)用設(shè)計模式開發(fā)中職責(zé)鏈模式的相關(guān)實現(xiàn)解析,示例代碼為傳統(tǒng)的Objective-C,需要的朋友可以參考下2016-03-03iOS應(yīng)用中發(fā)送HTTP的get請求以及HTTP異步請求的方法
這篇文章主要介紹了iOS應(yīng)用中發(fā)送HTTP的get請求以及HTTP異步請求的方法,代碼為傳統(tǒng)的Objective-C語言,說明都簡單地融入于注釋之中,需要的朋友可以參考下2016-02-02iOS當(dāng)多個網(wǎng)絡(luò)請求完成后執(zhí)行下一步的方法詳解
在多線程中,有時候我們會遇到一個界面同時有多個網(wǎng)絡(luò)請求(比如a,b,c,d四個網(wǎng)絡(luò)請求),在這四個個請求結(jié)束后,在請求到數(shù)據(jù)去做其他操作(UI更新等),下面這篇文章主要給大家介紹了關(guān)于iOS當(dāng)多個網(wǎng)絡(luò)請求完成后執(zhí)行下一步的相關(guān)資料,需要的朋友可以參考下。2017-12-12詳解iOS開發(fā)中UITableview cell 頂部空白的多種設(shè)置方法
這篇文章主要介紹了詳解iOS開發(fā)中UITableview cell 頂部空白的多種設(shè)置方法的相關(guān)資料,需要的朋友可以參考下2016-04-04