IOS 蘋果官方推送

客戶端:

1、告訴應用程序,接收push來的消息(當然是放在didFinishLaunchingWithOptions方法里面了)

[application?registerForRemoteNotificationTypes:UIRemoteNotificationTypeAlert|UIRemoteNotificationTypeBadge|UIRemoteNotificationTypeSound];

2、完成推送比不可缺的東西:deviceToken,蘋果推送會根據deviceToken的值進行推送的操作。deviceToken和全球之內的蘋果設備一一對應的,也就是說它是唯一的。

-?(void)application:(UIApplication?*)application?didRegisterForRemoteNotificationsWithDeviceToken:(NSData?*)deviceToken?{

NSLog(@"獲取設備的deviceToken:?%@",?deviceToken);

}

-?(void)application:(UIApplication*)application?didFailToRegisterForRemoteNotificationsWithError:(NSError*)error{

NSLog(@"Failed?to?get?token,?error:?%@",?error);

3、對推送過來的消息進行處理的方法:

-?(void)application:(UIApplication?*)application?didReceiveRemoteNotification:(NSDictionary?*)userInfo

{

//以警告框的方式來顯示推送消息

if([[userInfo?objectForKey:@"aps"]?objectForKey:@"alert"]!=NULL)?{

UIAlertView*?alert?=?[[UIAlertView?alloc]?initWithTitle:@"經過推送發送過來的消息"

message:[[userInfo?objectForKey:@"aps"]?objectForKey:@"alert"]

delegate:self

cancelButtonTitle:@"關閉"

otherButtonTitles:@"處理",nil];

[alert?show];

[alert?release];

}

}



#pragma mark是否接收推送消息

- (BOOL)isAllowedNotification {

if([[UIDevicecurrentDevice].systemVersionfloatValue] >=8.0) {

UIUserNotificationSettings*setting = [[UIApplicationsharedApplication]currentUserNotificationSettings];

if(UIUserNotificationTypeNone!= setting.types) {

returnYES;

}

}else{

UIRemoteNotificationTypetype = [[UIApplicationsharedApplication]enabledRemoteNotificationTypes];

if(UIRemoteNotificationTypeNone!= type)

returnYES;

}

returnNO;

}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容