您的位置:首页 > 移动开发 > IOS开发

iOS—— 秒学远程推送

2015-10-19 22:35 381 查看
一. 引言

iOS 中消息推送两种方式,分别是本地推送、远程推送。

这里主要将远程推送与配置过程。

二、远程推送机制的原理



这张图很清晰,大致意思是:你的应用服务端将消息发送到apple 的APNS服务器,APNS服务器将消息推送到指定的IPhone,最后由IPhone负责将消息推送至你的APP。虽然中间加了APNS,感觉好像增加了负担,其实恰恰相反, 因为apple 对推送的统一管理,使我们开发中者的工作变得异常简单。

三、实现APP 收到远程推送(真机测试)*

(1) 请求CSR 文件*

在MAC应用程序中找到钥匙,打开它。

点击选项栏中的钥匙访问中的证书助理:



选择从证书颁发机构请求证书



填写电子邮件和名称,选择存储到磁盘,然后继续。

这时,我们存储的地方有这样一个文件:CertificateSigningRequest.certSigningRequest。

(2)创建AppId*

https://developer.apple.com/ 的member Center:



使用开发者账户登录,登录后选择Certificates:





如果你的项目中已经创建了APP id,则可以不用重新创建,但是你创建的APP id 必须支持远程推送。如果还没有创建,点击 + 号,创建一个。



之后的界面中APP ID 有两种类型:Explicit和Wildcard,分别是特殊的和通配的,我们需要推送功能,设置App ID 的name



这个ID不能是通配的,所以我们选择第一个。设置App ID 的Bundle ID



这里需要填写Bundle ID (记住此时设置的Bundle ID, 程序中需要修改的与其一致)设置程序中的Bundle ID,点开左面三列,都要设置Bundle ID

!



在APP ID的服务设置中,将Push Notification勾选上,点击continue。



之后点击submit,最后点击Done。这时我们的APP IDs列表中会出现我们刚才创建的APP ID。

(3)创建测试证书(一个账号只能创建一个)

选择Certificates中的Development,点击 + 号创建,选择第一个。然后点击continue。(这里已经创建过,不能在创建)



(4)创建推送证书

选择Certificates中的Development,点击 + 号创建,选择第二个。然后点击continue。



点击后出现下面界面:出现App ID 选项。这个App ID 就是我们步骤(2)创建AppId中 的Bundle ID,然后点击continue。



继续点击continue,出现下面页面,选择choose file, 导入步骤(1)请求CSR 文件:CertificateSigningRequest.certSigningRequest





点击create后,出现下面页面, 此时点击蓝色

Download, 下载



下载后的文件



应用

(1)打开钥匙串访问, 双击刚刚下载的aps_development.cer 文件,会在钥匙串访问我的证书中新出现一个证书。例如下图:



右键新创建的证书,选择导出,需要自己设置密码(记住设置的密码,后面使用),点击好,导出成功。





打开一个第三方,这里使用的是极光, 进入官方网站,点击创建应用,输入应用名称,导入iOS开发证书,就是刚刚从钥匙串访问中导出的证书,开发证书密码:刚刚导出时自己设置的密码。都弄好后,点击创建我的应用。



(4)创建描述文件

选择右侧的Provisioning Profiles -> Development .。点击+ 号,勾选第一个如下图



点击Continue后出现下面页面, 选择App ID ,这里的App ID就是步骤(2)创建AppId 中设置的App ID name。如下图:



点击Continue后,跳出页面点击Selecte All (也可根据自己需要挑选),

继续点击Continue,出现下一个页面同上步骤,

继续点击Continue出现下面页面,设置 Profile Name:(随意)



点击Create创建,出现下面页面,表示创建成功。 此时点击DownLoad下载。



下载后的文件



应用

打开xcode,双击刚刚下载的 Green12345.mobileprovision 描述文件。

设置Build Settings 中的 Code Signing。

Code Signing Identifity 设置为自己的开发者账户

Provisioning Profile 设置为描述文件名称



再进入极光官网文档-> 入门指南 -> iOS 集成指南 http://docs.jpush.io/guideline/ios_guide/

根据其步骤进行设置(有些之前已经设置过)。设置好之后就可以运行了。

2、导入API开发包到应用程序项目,需要下载极光提供的 iOS SDK 。

5、创建并配置PushConfig.plist文件

{

“APS_FOR_PRODUCTION” = “0”;

“CHANNEL” = “Publish channel”;

“APP_KEY” = “AppKey copied from JPush Portal application”;

}

最后一项 AppKey copied from JPush Portal application 意思是复制JPush 中的App Key,就是下图的App key



好了,所有的设置后之后就可以真机运行了,虽然有点麻烦,但是详细步骤已写清楚,按照步骤来都可以。

程序运行中可能出现的错误可参考 极光官网的常见问题:http://docs.jpush.io/guideline/faq/,非常有用奥。。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: