iOS 極光推送控制器跳轉

2021-09-22 09:30:57 字數 2202 閱讀 3382

在前面已經做完了極光訊息的推送,那麼有訊息了,如何跳轉到需要的控制器呢?其實,主要還是在userinfo這個訊息裡面做判斷來處理,具體如下:

下面這兩個是遠端推送時接收訊息的方法,這是應用程式提供的方法,只要成功註冊了極光推送,推送訊息時,就會呼叫這兩個方法,在這兩個方法收到的userinfo訊息做判斷即可。

// required,for systems with less than or equal to ios6

// ios 7 support required

具體**如下:我這裡是區別環信推送訊息控制器跳轉和環信推送訊息控制器跳轉

通過在極光推送的伺服器上設定自定義字段

,用來判斷跳轉的是極光推送的訊息控制器

//訊息提示數字

self.badge = userinfo[@"

aps"][@"

badge"];

//取得extras欄位內容

nsstring *customizevalue = [userinfo valueforkey:@"

customizeextras

"]; //

服務端中extras欄位,key是自己定義的,用來判斷跳轉的是極光推送的訊息控制器

//啟動程式,跳轉到極光推送訊息的控制器

if ([customizevalue isequaltostring:@"

jpush

"])

else

//應用正處理前台狀態下,不會收到極光推送訊息,因此在此處需要額外處理一下

uialertview *alert =[[uialertview alloc]

initwithtitle:

@"您有一條推送訊息

"message:userinfo[

@"aps

"][@"

alert"]

delegate

:self

cancelbuttontitle:

@"取消

"otherbuttontitles:

@"確定

",nil];

[alert show];

//註冊監聽,取消badgevalue的數字

[notycenter addobserver:self selector:@selector(cancelbadgevalue) name:@"

cancelbadgevaluenotification

"object

:nil];

}}#pragma mark - uialertviewdelegate

-(void)alertview:(uialertview *)alertview clickedbuttonatindex:(nsinteger)buttonindex

else

}else

if (buttonindex == 1

) }

}#pragma mark - 取消極光訊息數目

-(void

)cancelbadgevalue/**

* 獲取當前螢幕顯示的viewcontroller */

- (uiviewcontroller *)getcurrentvc}}

uiview *frontview = [[window subviews] objectatindex:0

];

id nextresponder =[frontview nextresponder];

if ([nextresponder iskindofclass:[uiviewcontroller class

]])else

return

result;

}程式猿神奇的手,每時每刻,這雙手都在改變著世界的互動方式!

iOS控制器跳轉動畫

123 4567 891011 1213 14myviewcontroller myvc myviewcontroller alloc init 建立動畫 catransition animation catransition animation 設定運動軌跡的速度 animation.timing...

ios極光推送

ios 極光推送整合 分類 ios開發筆記 2014 11 20 13 49 2324人閱讀收藏 舉報jpush 極光推送 jpushdemo 極光推送整合 jpush整合 稍稍研究了一下極光推送,其實是非常簡單的,不過這個過程也出現了一些問題。對於應用在前台時,需要額外處理一下。關於極光推送,由於...

iOS極光推送

目前的推送 極光,信鴿還是很不錯的選擇,本文主要解釋一下極光推送 這是極光官網的註冊,這裡需要上傳證書 按照官方文件的介紹證書的問題不是很大,boundle id 是根據證書自動識別的 需要說明一下開發環境就是需要上傳測試推送證書,生產環境是上傳測試證書 然後配置環境 設定 search paths...