首页 > 代码库 > ios--pushnotification学习与总结(推送机制)
ios--pushnotification学习与总结(推送机制)
第一步熟悉pushnotification以及创建证书,可以通过下面这个网站去熟悉下
http://blog.csdn.net/daydreamingboy/article/details/7977098 (iOS上简单推送通知(Push Notification)的实现)
第二步,找一个demo学习一下:我在github上面找的一个demo
https://github.com/Turkcell/PushNotification_iOS_sdk
在代码中要做以下的事情:
#pragma mark --------远程通知 - (void)registerAPNSNotification { //适配8.0,IF走8.0 if (![[NSUserDefaults standardUserDefaults] boolForKey:kOatosParamsDeviceToken]) { if ([[UIApplication sharedApplication] respondsToSelector:@selector(registerUserNotificationSettings:)]) { UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge|UIUserNotificationTypeSound|UIUserNotificationTypeAlert categories:nil]; [[UIApplication sharedApplication] registerUserNotificationSettings:settings]; }else { [[UIApplication sharedApplication] registerForRemoteNotificationTypes:UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound]; } } }
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { [self registerAPNSNotification]; //清除所有本地通知 [application cancelAllLocalNotifications]; application.applicationIconBadgeNumber = 0; }
- (void)applicationWillTerminate:(UIApplication *)application { if ([[UIApplication sharedApplication] enabledRemoteNotificationTypes] == UIRemoteNotificationTypeNone && !isLogout) { [self registerAPNSNotification]; } // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. }
//注册远程通知成功 - (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { NSString *token = [NSString stringWithFormat:@"%@", [[[deviceToken description] stringByReplacingOccurrencesOfString:@"<" withString:@""] stringByReplacingOccurrencesOfString:@">" withString:@""]]; DLog(@"deviceToken[%@]", token); [[NSUserDefaults standardUserDefaults] setObject:token forKey:kOatosParamsDeviceToken]; }
//注册远程通知失败 - (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error { NSString *error_str = [NSString stringWithFormat: @"%@", error]; DLog(@"获取deviceToken失败[%@]", error_str); }
ios--pushnotification学习与总结(推送机制)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。