IOS消息推送APNs
2016-04-28 23:14
113 查看
- (BOOL)pushApplication:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary
*)launchOptions {
// Override point for customization after application launch.
if([application
respondsToSelector:@selector(registerUserNotificationSettings:)])
{
UIUserNotificationType notificationTypes =
UIUserNotificationTypeBadge |
UIUserNotificationTypeSound |
UIUserNotificationTypeAlert;
UIUserNotificationSettings *settings = [UIUserNotificationSettings
settingsForTypes:notificationTypes
categories:nil];
[application registerUserNotificationSettings:settings];
}
#if !TARGET_IPHONE_SIMULATOR
//iOS8 注册APNS
if ([application
respondsToSelector:@selector(registerForRemoteNotifications)]) {
[application registerForRemoteNotifications];
}else{
UIRemoteNotificationType notificationTypes =
UIRemoteNotificationTypeBadge |
UIRemoteNotificationTypeSound |
UIRemoteNotificationTypeAlert;
[[UIApplication
sharedApplication]
registerForRemoteNotificationTypes:notificationTypes];
}
#endif
return
YES;
}
// 将得到的deviceToken
- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData
*)deviceToken{
NSLog(@"deviceToken = %@", [deviceToken
description]);
}
//失败
- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError
*)error{
}
//处理收到的消息推送
- (void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo {
[self
pushApplication:application
didReceiveRemoteNotification:userInfo];
}
*)launchOptions {
// Override point for customization after application launch.
if([application
respondsToSelector:@selector(registerUserNotificationSettings:)])
{
UIUserNotificationType notificationTypes =
UIUserNotificationTypeBadge |
UIUserNotificationTypeSound |
UIUserNotificationTypeAlert;
UIUserNotificationSettings *settings = [UIUserNotificationSettings
settingsForTypes:notificationTypes
categories:nil];
[application registerUserNotificationSettings:settings];
}
#if !TARGET_IPHONE_SIMULATOR
//iOS8 注册APNS
if ([application
respondsToSelector:@selector(registerForRemoteNotifications)]) {
[application registerForRemoteNotifications];
}else{
UIRemoteNotificationType notificationTypes =
UIRemoteNotificationTypeBadge |
UIRemoteNotificationTypeSound |
UIRemoteNotificationTypeAlert;
[[UIApplication
sharedApplication]
registerForRemoteNotificationTypes:notificationTypes];
}
#endif
return
YES;
}
// 将得到的deviceToken
- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData
*)deviceToken{
NSLog(@"deviceToken = %@", [deviceToken
description]);
}
//失败
- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError
*)error{
}
//处理收到的消息推送
- (void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo {
[self
pushApplication:application
didReceiveRemoteNotification:userInfo];
}
相关文章推荐
- iOS开发屏幕适配
- Xcode高效开发 ——快捷键
- iOS 指令集的相关
- iOS开发之MD5加密的使用
- [iOS]查找数组NSArray中是否包含指定的元素
- 【iOS】获取缓存大小清除缓存的方法
- iOS性能调优总结
- #define的使用与规范 iOS简单整理
- ios开发中-AFNetworking 的简单介绍
- iOS开发-清理缓存功能的实现
- iOS 应用程序启动流程
- ios 集成 支付宝 遇到的各种问题 总结
- IOS 手势学习网址
- iOS应用真机调试/证书配置/打包/发布国际化
- iOS之AFNetworking
- iOS 关于枚举的使用
- iOS中定时器NSTimer使用
- iOS开发总结之 view的frame、center和和view的bounds之间的区别
- iOS开发之SMSSDK的简单运用
- 【iOS】内存缓存