一、极光推送简介
极光推送是一个端到端的推送服务,使得服务器端消息能够及时地推送到终端用户手机上,整合了iOS、Android和WP平台的统一推送服务。使用起来方便简单,已于集成,解决了原生远程推送繁杂的步骤和各种验证、申请和易出错等等问题,为 JPush Server 上报 Device Token,免除开发者管理 Device Token 的麻烦,应用运行时,应用内 JPush 长连接可以持续地收到推送消息
。服务的使用是基础功能免费,高级功能和专业功能收费,具体可见图
二、极光推送产品
1.极光推送:远程推送服务(这篇文章主要介绍对象)
2.极光IM:极光的另一款产品,定位于App通讯工具(这篇文章暂不介绍)
三、原理:

红色部分是 APNs 推送,JPush 代理开发者的应用(需要基于开发者提供的应用证书),向苹果 APNs 服务器推送。由 APNs Server 推送到 iOS 设备上。


蓝色部分是 JPush 应用内推送部分,即 App 启动时,内嵌的 JPush SDK 会开启长连接到 JPush Server,从而 JPush Server 可以推送消息到 App 里。
四、极光推送iOS SDK的集成步骤
1.在JPush Portal上创建应用
点击创建应用后对应用进行相应的设置和配置
iOS开发证书和生产证书的配置,首先进行申请
证书的申请和之前真机调试的证书的过程一样,详细步骤请看真机调试那篇文档
申请到证书之后在Mac的钥匙串中导出.p12文件,注意直接选中证书文件后导出,不要展开private key再导出,否则会导致证书配置失败
和真机调试证书的.p12文件导出不一样,不能展开再导出,否则极光验证会出错
2.创建成功后会生成对应的App KEY,用来在应用极光推送的应用中配置
3.导入极光推送API开发包到项目文件中

在官网下载相应的SDK并解压缩后,会得到如图所示文件
打开文件夹
将lib文件拖到我们的项目中,并导入如下必须框架
     CFNetwork.framework
     CoreFoundation.framework
     CoreTelephony.framework
     SystemConfiguration.framework
     CoreGraphics.framework
     Foundation.framework
     UIKit.framework
     Security.framework
     libz.dylib
4.创建并配置PushConfig.plist文件
5.调用代码:在应用程序的AppDelegate代码中加入下面标注有Required的代码(当然得先导入.h头文件)
- (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);
}
6.好了,这个时候在登录极光账号,选择相应的应用,选择推送
再选择发送通知,进入到推送消息设置界面,设置完成后点击立即发送,此时,相应的iPhone端就会收到您发送出的推送通知啦

iOS极光推送SDK的使用流程的更多相关文章

  1. (转载)iOS 极光推送SDK 集成指南

    iOS SDK 集成指南 使用提示 本文匹配的 SDK版本:r1.2.5 以后. 查看最近更新了解最新的SDK更新情况. 产品功能说明 极光推送(JPush)是一个端到端的推送服务,使得服务器端消息能 ...

  2. iOS开发——iOS10升级极光推送SDK、友盟分享SDK

    前不久升级了Xcode8 ,同时iOS10系统也推送久. 由于公司需要适配iOS 10系统,同时第三方sdk建议升级. 包含替换升级新的SDK和相应的代码修改. 主要分享如何升级极光推送SDK,友盟分 ...

  3. 极光推送SDK通过泰尔终端实验室检测,符合统一推送接口标准

    1月7日,中国深圳--国内领先的开发者服务提供商极光(Aurora Mobile, NASDAQ:JG)宣布其旗下产品极光推送SDK通过中国信息通信研究院泰尔终端实验室的检测,其性能和接口标准符合统一 ...

  4. ios -- 极光推送《1》

    昨天公司项目要加入远程推送功能,自己做显然会很麻烦,所以用了极光的远程推送,下面我会讲如何制作推送证书并使用极光推送进行远程推送. 先讲讲怎么下载推送证书吧(前面的很简单要是知道的可以直接往下滑,简书 ...

  5. iOS 极光推送

    1.关于推送的几个证书.http://www.mobile-open.com/2016/931624.html 进入开发者中心:https://developer.apple.com/account/ ...

  6. iOS极光推送

    昨天花了一下午的时间研究了下极光推送,也前也是没做过,不知道从何下手!才开始的时候一看官方的SDK感觉好难,不过经过一系列的捣鼓之后,手机收到了推送信息,感觉其实并没有那么难! 1.配置开发证书(得有 ...

  7. iOS极光推送的基本使用

    昨天花了一下午的时间研究了下极光推送,也前也是没做过,不知道从何下手!才开始的时候一看官方的SDK感觉好难,不过经过一系列的捣鼓之后,手机收到了推送信息,感觉其实并没有那么难! 1.配置开发证书(得有 ...

  8. iOS - 极光推送证书的创建及过期处理

    无论iPhone还是安卓,我们用到的所有应用基本都有推送通知服务,因为这是应用很好的推广方式,有新产品了.有新更新了通知下用户及时查看.但Apple有点特殊,它的推送需要发到苹果服务器上中转一下,这就 ...

  9. iOS极光推送,两次Bundleid不一致( 开发证书没有通过验证 是否重新上传证书)的解决方案

    极光在配置ios端推送时,需要上传p12证书,如果遇到如下图:: 证书上传未通过的原因一般有: 1.当前上传的p12证书密码输入有误: 2. 证书导出的时候展开了证书,把个人私钥导了出来,导证书的时候 ...

随机推荐

  1. $CDQ$分治总结

    A.\(CDQ\) 分治 特别基础的教程略. \(CDQ\)分治的优缺点: ( 1 )优点:代码量少,常数极小,可以降低处理维数. ( 2 )缺点:必须离线处理. \(CDQ\)分治与其他分治最本质的 ...

  2. Luogu3118:[USACO15JAN]Moovie Mooving

    题面 传送门 Sol 设\(f[S]\)表示看过的电影集合为\(S\),当前电影的最大结束时间 枚举电影和电影的开始时间转移 可以对开始时间\(sort\) 二分一下转移即可 # include &l ...

  3. angular编写表单验证

    angular编写表单验证 一.整体概述 表单内容如下图,包括常用的用户名.密码.确认密码.手机.邮箱等 整体js代码很少,就一个指令用于写确认密码和密码是否相等.其他 验证都是使用angular自带 ...

  4. Node.js 部署免费/自动续订 HTTPS

    随着互联网快速发展,互联网信息安全越来越受到大家重视,HTTPS 应该是近两年各大厂商都在尽力普及的技术之一.国内大厂基本上已经全面普及了 HTTPS. 本文首发于我的个人网站:听说 - https: ...

  5. Nancy启用跨站攻击防护(CSRF)

    什么是CSRF(跨站攻击) 可能很多人已经对CSRF有所了解,就简单的介绍下: CSRF全程是 Cross-Site Request Forgery .大概意思就是在登录用户不知情的情况下,由一个网站 ...

  6. asp.net WebApi 使用总结

    如果想让服务端直接返回json或者xml的话,可以考虑使用webservice.wcf,或者webapi.webservice基于xml,效率较慢,wcf虽然可以返回json,但是配置繁琐.webap ...

  7. jQuary学习の二の语法

    jQuery 语法是通过选取 HTML 元素,并对选取的元素执行某些操作.基础语法: $(selector).action() 美元符号定义 jQuery 选择符(selector)"查询& ...

  8. CentOS配置本地yum源

    如果CentOS服务器处在内网环境中时,如果缺少依赖手动安装那么会非常麻烦,要花费很多时间来寻找rpm包,现在如果搭建本地的yum源,就非常方便了,使用yum源首先需要一个CentOS安装镜像,去官网 ...

  9. Java大世界

    "java越来越过份了." php狠狠的说,他转头看着C:"C哥,您可是前辈,java最近砸了我不少场子,你老再不出来管管,我怕他眼里就没有您了啊." C哥吸烟 ...

  10. openstack安装系列问题:window7 64位安装的virtualBox 只能选择32位的系统安装不能选择64位的系统安装

    个人原创,转载请注明作者,出处,否则依法追究法律责任 2017-10-03-12:22:22 现象:window7 64位安装的virtualBox 只能选择32位的系统安装不能选择64位的系统安装 ...