推送廣義上分為兩種,
一種是 程式在前台的時候,不想在工作列裡面顯示通知,直接在app中進行某種操作。這個叫做自定義消息。這個是在前台時,app與極光背景建立了一個長連結。
另一種是 程式處于前、背景 或者殺死狀态的時候,在工作列中顯示推送的提醒,點選工作列中的條目跳轉到app,來做一些頁面跳轉等的操作 這個是大家都常見的那種推送。
自定義消息一般用的很少。
最新的推送裡面有增加了富文本推送功能,這個暫時需求中還沒有遇到過,有空可以嘗試下。
- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
{
NSLog(@"deviceToken -- >> %@",deviceToken);
NSString *pushToken = [[[[deviceToken description]
stringByReplacingOccurrencesOfString:@"<" withString:@""]
stringByReplacingOccurrencesOfString:@">" withString:@""]
stringByReplacingOccurrencesOfString:@" " withString:@""];
}
但是 極光推送 的時候 ,傳過去的直接 是 NSData, 不用轉換成字元串
自定義消息 推送的時候需要傳遞給背景 一個 極光推送 注冊成功時 傳回來的 注冊id 而不是 token
而且很奇怪,在 debug 模式下 v2.X (具體記不清啦)可以正常編譯通過, 但是 在 release 模式下 就會 編譯不通過