iOS经典讲解之实现App消息推送功能(一)


作者:Loving_iOS

转载请标明出处:http://blog.csdn.net/loving_ios/article/details/48980457


一、消息推送的基本概念

@在实现消息推送功能之前先来了解一下消息推送的基本概念:

@介绍一下苹果的推送机制(APNS)

Provider是给你手机应用发出推送消息的服务器,而APNS(Apple Push Notification Service)则是苹果消息推送服务器。你本地的服务器当需要给应用推送一条消息的时候,先要将消息发出到苹果推送服务器,然后再由苹果推送服务器将消息发到安装了该应用的手机。

接下来再看一张解释图:


根据上面可以得出:要想实现消息推送,必须满足1个前提5个步骤。

前提:必须真机才可以实现。

步骤:

1.你的IOS应用需要去注册APNS消息推送功能。

2.当苹果APNS推送服务器收到来自你的应用的注册消息就会返回一串device token给你(很重要)

3.将应用收到的device Token传给你本地的Push服务器。

4.当你需要为应用推送消息的时候,你本地的推送服务器会将消息,以及Device Token打包发送到苹果的APNS服

5.APNS再将消息推送给目的iphone对应的应用。

二、消息推送相关证书

消息推送需要三个重要组成部分:AppID(Bundle identifier)、推送证书(与AppID、CSR文件关联)和描述文件(与AppID、注册设备关联),下面讲解如何获取这三个部分。

首先你应该有苹果开发者账号,如果没有可以注册(购买)。搜索苹果开发者中心,进入平台,因为外国服务器,所以很卡,请耐心等待,建议使用Safari浏览器。

iOS经典讲解之实现App消息推送功能(一)_第1张图片

进入平台后点击会员中心,进入注册登陆页面,在这里不讲注册,假设你已经拥有开发者账号。

iOS经典讲解之实现App消息推送功能(一)_第2张图片

登陆账号

登陆成功后,点击对应选项,进入获得相关证书页面:

iOS经典讲解之实现App消息推送功能(一)_第3张图片


选择iOSApps 对应的Identifiers:

iOS经典讲解之实现App消息推送功能(一)_第4张图片


接下来是获取App ID的过程:

如图,点击加号添加AppID,并填写相应的描述名称,不允许带有特殊字符。Bundle ID一定要和工程中的Bundle Identifier一致,否则不能成功(可以先填写这个地方再修改工程中的Bundle Identifier,也可以将工程的Bundle Identifier复制到该位置),这是唯一的Bundle ID。并且勾选Push Notification选项。点击Continue。如果你不需要将Bundle ID设成唯一的,可以适应不同的工程,你可以选择下面的WildCard App ID,将Bundle ID设置成com.domainname.*格式,那么你的工程Bundle Identifier就可以设置成com.domainname.+工程名了,这时可以是任意工程名都可以。只要前面的com.domainname.一致就可以了。

iOS经典讲解之实现App消息推送功能(一)_第5张图片

iOS经典讲解之实现App消息推送功能(一)_第6张图片

如果出现该状态说明获取成功,点击提交。

iOS经典讲解之实现App消息推送功能(一)_第7张图片


接下来是获取推送证书的过程:

和获取App ID类似,如图所示。


选择APNs选项。

选择你刚获得的appID。

iOS经典讲解之实现App消息推送功能(一)_第8张图片


点击继续:


这里需要一个CSR文件,接下来我们讲解如何得到这个CSR文件。

获取CSR文件步骤:

1、打开钥匙串访问工具,如图选择相应的选项。


2、点击从证书颁发机构请求证书...然后填入相应的内容,选择存储到磁盘。

iOS经典讲解之实现App消息推送功能(一)_第9张图片

3、存储获得的CSR文件,完成。

iOS经典讲解之实现App消息推送功能(一)_第10张图片


回到获取推送证书的地方,将刚得到的CSR文件导入:


下载推送证书(推送证书获得完毕):iOS经典讲解之实现App消息推送功能(一)_第11张图片


接下来是获取描述文件的过程:

和上面类似首先添加选项:


如图选择相应的选项:

iOS经典讲解之实现App消息推送功能(一)_第12张图片

选择对应的AppID:

iOS经典讲解之实现App消息推送功能(一)_第13张图片

选择开发者平台获取的开发证书, 继续:

选择注册好的设备:


给描述文件一个名字:


下载描述文件:

iOS经典讲解之实现App消息推送功能(一)_第14张图片


到目前为止已经获得到APP ID ,推送证书,和描述文件。

iOS经典讲解之实现App消息推送功能(一)_第15张图片

现在关于实现推送功能的准备工作已经完成。下面请阅读下一篇iOS经典讲解之实现App消息推送功能(二)

注:关于开发证书的获取和注册设备的相关内容,我们在这里不做介绍,假设大家已经有开发证书并且已经注册过设备。

上面的介绍是开发环境下的步骤,如果是上线项目类似。


你可能感兴趣的:(ios,iPhone,推送,apns)