ios极光推送使用总结
2016-04-28 00:00
435 查看
1、 在极光官方网站上实现应用程序的注册,拿到AppKey,上传验证开发证书和生产证书
CoreFoundation.framework
CoreTelephony.framework
SystemConfiguration.framework
CoreGraphics.framework
Foundation.framework
UIKit.framework
Security.framework
libz.dylib
CHANNEL
指明应用程序包的下载渠道,为方便分渠道统计。根据你的需求自行定义即可。
APP_KEY
在管理Portal上创建应用时自动生成的(AppKey)用以标识该应用。请确保应用内配置的 AppKey 与第1步在 Portal 上创建应用时生成的 AppKey 一致,AppKey 可以在应用详情中查询。
APS_FOR_PRODUCTION
1.3.1版本新增,表示应用是否采用生产证书发布( Ad_Hoc 或 APP Store ),0 (默认值)表示采用的是开发者证书,1 表示采用生产证书发布应用。
此处设置的值建议按对应证书来设置值。
在1.2.2或之前版本的配置文件中,有 TEST_MODE 这个键,新版的SDK不再使用,可以将它删除。
6、 添加代码
2、导入API开发包到应用程序项目
将SDK包解压,在XCode中选择“Add files to 'Your project name'...”,将解压后的lib子文件夹(包含APService.h、libPushSDK.a)添加到你的工程目录中。3、必要的框架
CFNetwork.frameworkCoreFoundation.framework
CoreTelephony.framework
SystemConfiguration.framework
CoreGraphics.framework
Foundation.framework
UIKit.framework
Security.framework
libz.dylib
4、Build Settings
设置 Search Paths 下的 User Header Search Paths 和 Library Search Paths,比如SDK文件夹(默认为lib)与工程文件在同一级目录下,则都设置为"$(SRCROOT)/[文件夹名称]"即可。5、创建并配置PushConfig.plist文件
在你的工程中创建一个新的Property List文件,并将其命名为PushConfig.plist,填入Portal为你的应用提供的APP_KEY等参数。{ "APS_FOR_PRODUCTION" = "0"; "CHANNEL" = "Publish channel"; "APP_KEY" = "AppKey copied from JPush Portal application"; }
CHANNEL
指明应用程序包的下载渠道,为方便分渠道统计。根据你的需求自行定义即可。
APP_KEY
在管理Portal上创建应用时自动生成的(AppKey)用以标识该应用。请确保应用内配置的 AppKey 与第1步在 Portal 上创建应用时生成的 AppKey 一致,AppKey 可以在应用详情中查询。
APS_FOR_PRODUCTION
1.3.1版本新增,表示应用是否采用生产证书发布( Ad_Hoc 或 APP Store ),0 (默认值)表示采用的是开发者证书,1 表示采用生产证书发布应用。
此处设置的值建议按对应证书来设置值。
在1.2.2或之前版本的配置文件中,有 TEST_MODE 这个键,新版的SDK不再使用,可以将它删除。
6、 添加代码
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease]; self.window.backgroundColor = [UIColor whiteColor]; [self.window makeKeyAndVisible]; // Required #if __IPHONE_OS_VERSION_MAX_ALLOWED > __IPHONE_7_1 if ([[UIDevice currentDevice].systemVersion floatValue] >= 8.0) { //可以添加自定义categories [APService registerForRemoteNotificationTypes:(UIUserNotificationTypeBadge | UIUserNotificationTypeSound | UIUserNotificationTypeAlert) categories:nil]; } else { //categories 必须为nil [APService registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert) categories:nil]; } #else //categories 必须为nil [APService registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert) categories:nil]; #endif // Required [APService setupWithOption:launchOptions]; return YES; } - (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { // Required [APService registerDeviceToken:deviceToken]; } - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { // Required [APService handleRemoteNotification:userInfo]; } - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler { // IOS 7 Support Required [APService handleRemoteNotification:userInfo]; completionHandler(UIBackgroundFetchResultNewData); }
相关文章推荐
- ios 摇一摇
- iOS开发之传感器
- iOS Block
- ios 十六进制与十进制转换
- iOS获取当前时间及前一天或后一天时间
- iOS 中KVC、KVO、NSNotification、delegate 总结及区别
- iOS 页面传值总结
- iOS hidesBackButton正确姿势 ios键盘联想屏蔽
- Ios userDefaultes本地存储
- 字典中添加不同类型的值(ios)
- iOS 蓝牙开发流程
- iOS开发多线程篇—创建线程
- iOS 实现缓存清理
- 自定义iOS下拉框
- iOS 将服务器下载下来的db文件和本地的db文件合并后保存
- iOS真机调试时更新证书错误:No matching provisioning profiles
- iOS 8小时的时间差
- 教你HTML5与iOS交互实现各种排序动画演示
- 装系统问题,BIOS显示不出硬盘解决方案
- iOS:时间格式化(标准时间转为时间戳、时间戳转为标准时间、时间戳转为日期)