概述
本文采用pod 方式导入JPUSH
一、首先在Podfile文件中写入(具体podfile文件创建方法以后会阐述)
1. pod'JPush', '~> 2.1.8'
二、在AppDelegate.m中引入头文件 #import<JPUSHService.h>,并在以下方法中加入以下代码(具体含义参照官方文档)
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
if ([[UIDevice currentDevice].systemVersion floatValue] >= 8.0) {
//可以添加自定义categories
[JPUSHService registerForRemoteNotificationTypes:(UIUserNotificationTypeBadge |
UIUserNotificationTypeSound |
UIUserNotificationTypeAlert)
categories:nil];
} else {
//categories 必须为nil
[JPUSHService registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge |
UIRemoteNotificationTypeSound |
UIRemoteNotificationTypeAlert)
categories:nil];
}
// * @param isProduction 是否生产环境. 如果为开发状态,设置为 NO; 如果为生产状态,应改为 YES.
[JPUSHService setupWithOption:launchOptions appKey:PUSH_KEY
channel:@""
apsForProduction:NO
advertisingIdentifier:nil];
}
三、实现收到推送以及配置推送的方法
//注册DeviceToken 到JPUSHService服务器
- (void)application:(UIApplication *)application
didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
/// Required - 注册 DeviceToken
[JPUSHService registerDeviceToken:deviceToken];
}
//收到消息--iOS6 版本方法
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
// 取得 APNs 标准信息内容
//
NSDictionary *aps = [userInfo valueForKey:@"aps"];
//
NSString *content = [aps valueForKey:@"alert"]; //推送显示的内容
//
NSInteger badge = [[aps valueForKey:@"badge"] integerValue]; //badge数量
//
NSString *sound = [aps valueForKey:@"sound"]; //播放的声音
//
//
// 取得Extras字段内容
//
NSString *customizeField1 = [userInfo valueForKey:@"customizeExtras"]; //服务端中Extras字段,key是自己定义的
//
NSLog(@"content =[%@], badge=[%d], sound=[%@], customize field
=[%@]",content,badge,sound,customizeField1);
// Required,For systems with less than or equal to iOS6
[JPUSHService handleRemoteNotification:userInfo];
}
//收到消息--iOS7 版本方法
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
// IOS 7 Support Required
[JPUSHService handleRemoteNotification:userInfo];
completionHandler(UIBackgroundFetchResultNewData);
}
//注册失败
- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error {
//Optional
NSLog(@"did Fail To Register For Remote Notifications With Error: %@", error);
}
四、并按照如图设置
最后
以上就是机智楼房为你收集整理的iOS 极光推送小结(简单配置)的全部内容,希望文章能够帮你解决iOS 极光推送小结(简单配置)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复