iOS推送证书从申请到使用

关于这个话题,已经有很多写的很好的文章了。但是,在自己做的过程中,即使别人写的已经很好了,还是会遇到这样那样的问题。自己还是再写一遍吧。

本文记录了从无到有申请证书,到最后能够发出通知。当然,前提是我们有一个合适的开发者帐号。

准备工作

1. 登录开发者帐号,如果帐号的权限合适。我们会看到如下图:

或者最新的界面应该是下面(刚刚发现页面更新了):

2. 点击红色框内的菜单,会来到如下界面:

创建App ID

这里要创建的App ID就是我们的App的Bundle Id。

3. 点解左侧的“App IDs”,会看到当前帐号下的所有App ID。

4. 点击右上角的?

App ID Description下添加这个这个App ID的描述,如“My Test App”。

App ID Prefix下填写App的Bundle ID。不要带*号。

App Services下,勾选Push Notifications。

5. 点击Continue,会看到刚创建的App Id的信息。如下图:

6. 这时候再点击左侧的“App IDs”,会看到右边的列表多了一条。

申请证书

推送证书分为开发证书和生产证书。我们以生产证书为例。

7. 点击左侧的“Certificates”下的“Production”,会看到当前帐号下的所有生产证书

8. 点击右上角的?

9. 选中Production下的Apple Push Notification service SSL,点击Continue

10. 在App ID下选中我们新建的App ID。点击Continue

11. 点击Continue,来到如下界面,需要我们上传CSR文件

接下来,我们要先在本地生成CSR文件。

12. 打开钥匙串(Keychain Access)程序,点击左上角的Keychain Access,做如下图的选择

12. 然后会看到如下提示

13. 填入邮箱等信息,选择“Save to Disk”。点击Continue后,会提示保存选择保存位置。选择合适的保存位置,保存。

14. 再接着第#11步,我们要上传刚才生成的CSR文件。点击“Choose File”,选择我们刚才生成的文件,然后点击Continue。然后会来到如下界面:

这时,我们的证书已经创建好了。点击Download,将证书下载到本地。我在桌面创建一个名为Cert的文件夹,将证书放到该文件夹下。一会儿还会用。

创建Provisioning Profile

15. 点击左侧的Provisioning Profiles下的Distribution

16. 点击右上角的?

17. 点击Distribution下的In House,点击Continue

18. 在App ID下选择我们新建的App ID。点击Continue

19. 选择我们刚才新建的证书所属的帐号。点击Continue

19. 在Profile Name中,输入Profile的名字。点击Continue

这时,我们的Profile已经创建好了。点击Download,下载到本地。我把下载的Profile放到了在#14步中新建的Cert文件下。

生成供服务端使用的证书

这一步是在我们已经申请好的证书基础上,运行SSL命令。生成供我们的服务端使用的证书(也就是说,我们的服务端在发送通知的时候,要加载合适的证书)。

20. 打开桌面上的Cert文件夹,双击我们新申请的证书,证书会被倒入到钥匙串(Keychain Access)中。

打开钥匙串程序,点击Certificate,找到我们新建的证书,右键导出。如下图:

21. 输入文件名称,选择要保存的位置(我放在桌面上)。点击Save

22. 导出的时候,会要求输入密码,如下图:

23. 输入密码。点击OK。证书就被保存到了桌面上

24. 好吧,刚才保存的位置不好。把刚才导出的证书拖到Cert文件夹中。

25. 在Cert下创建一个Gen文件夹,将下载的证书和导出的证书复制到Gen中。并在Gen文件下,做如下的重命名:

下载的证书->developer_identity.cer

导出的证书->mykey.p12

注:这一步不是必须的,完全可以省略。我只是为了方便实用接下来的命令(参考自这里)。

25. 打开终端(Terminal)程序,cd到桌面的Gen文件夹下。依次输入如下命令:

openssl x509 -in developer_identity.cer -inform DER -out developer_identity.pem -outform PEM
openssl pkcs12 -nocerts -in mykey.p12 -out mykey.pem
openssl pkcs12 -export -inkey mykey.pem -in developer_identity.pem -out iphone_dev.p12

期间会要求输入密码(导出的证书的密码和新生成的证书的密码),按要求输入就可以了。如下图:

运行完毕后,会在Gen下生成几个文件,其中iphone_dev.p12就是供服务端使用的证书。

使用新证书对程序签名

当然,我们打包的时候要用新的证书和Profile。如下图:

在Project下,

在Target下,

接下来,就是打包了。当然,还需要在服务端实现通知的推送。

参考:

http://blog.csdn.net/kepoon/article/details/22672133

http://stackoverflow.com/questions/7213074/notnoop-java-apns-push

时间: 2024-10-06 00:41:15

iOS推送证书从申请到使用的相关文章

ios推送通知之ios推送证书的申请和使用配置

很多人初次接触推送通知,不知道怎么去申请ios推送证书和配置推送. 很多人犯的错误就是用推送证书p12去打包ipa,推送不是用来打包的,下面详细介绍ios推证书的申请和配置使用. ios推送证书分为测试调试用的iOS推送证书(开发环境)和上架到App Store的ios 推送证书!(生产环境) APP要推送通知首先要在创建APPID时勾选推送服务. 推送证书是配置上传到推送平台的,如极光推送.个推.小米推送等,不是用来打包ipa的,下面会有介绍. 一.创建唯一标示符App IDs 首先打开开发者

申请iOS推送证书.p12

iOS APP需要推送通知,要用到iOS推送证书,分为测试调试用的iOS推送证书(开发环境)和上架到App Store的ios 推送证书(生产环境)! 一.iOS发布推送证书(开发环境)测试APP iOS证书申请这里用到一个工具Appuploader,可以在win系统中辅助快速申请iOS证书,如果没有Mac也无所谓. 可以很快速的创建iOS推送证书 先安装好Appuploader安装教程 1.打开Appuploader,选择Certification. 2.点击+ADD\选择Push Notif

iOS推送证书申请

iOS APP需要推送通知,要用到iOS推送证书,分为测试调试用的iOS推送证书和上架到App Store的ios 推送证书! iOS证书申请这里用到一个工具Appuploader,可以在win系统中辅助快速申请iOS证书,如果没有Mac也无所谓. 可以很快速的创建iOS推送证书 先安装好Appuploader安装教程 一.iOS发布推送证书(上架到App Store使用) 1.打开Appuploader,选择Certification. 2.点击+ADD\选择Push Notification

iOS 推送证书制作(JAVA/PHP)

iOS 推送证书制作(JAVA/PHP) 在使用Java或者PHP制作iOS推送服务器的时候,需要自己从开发者网站上导出的aps_developer_identity证书和Apple Development Push Services证书进行合成,生成可以供Java使用的p12证书或供PHP使用的pem证书.aps_developer_identity证书和Apple Development Push Services证书的申请过程可以参考:http://www.cnblogs.com/hubj

iOS 推送证书

push 服务器证书 钥匙串:登入-->证书,选项里面导出证书命名为cert.p12,跟密钥命名为key.p12 需要将上面的2个.p12文件转成.pem格式: openssl pkcs12 -clcerts -nokeys -out cert.pem -in cert.p12 openssl pkcs12 -nocerts -out key.pem -in key.p12 如果需要对 key不进行加密: openssl rsa -in key.pem -out key.unencrypted.

iOS 推送证书的制作

关于iOS推送证书的P12文件,并非直接从KeyChain导出来的证书文件.而是须要经过openSSL工具制作的.(好在Mac OS 默认就有openSSL命令) 针对不同的Server平台,须要的证书是不同的,先说一下.Net框架开发的Server的证书制作: (开发用.公布用,命令是一样的.仅仅须要提供相应种类的文件即可了) 打开命令终端: // 得到先前制作好的推送证书,制作pem文件 openssl x509 -in aps_production.cer -inform DER -out

iOS 推送证书制作 (JAVA/PHP)

// aps_development.cer 转化成pem openssl x509 -in aps_development.cer -inform der -out PushChatCert.pem // p12 转化成pem openssl pkcs12 -nocerts -out PushChatKey.pem -in Push.p12 // Java服务器所需的证书为p12格式 openssl pkcs12 -export -in PushChatCert.pem -inkey Push

APNS远程推送证书的申请和制作——详细解析

发表于6个月前(2014-08-04 17:57)   阅读(1708) | 评论(7) 4人收藏此文章, 我要收藏 赞3 摘要 我们的手机每天会被很多通知轰炸,那么,这些通知是怎么弄出来的呢,下面为大家详细解析 APNS 远程推送 目录[-] 一.远程推送的原理 二.在程序上注册远程通知 三.申请推送证书 1.申请本地证书: 2.在开发者网站上申请证书 四.申请描述文件(开发和发布描述文件) 五.为服务器制作证书 1.准备p12文件 2.将下载的证书制作成.pem 文件 3.将.p12 证书制

ios 推送 证书配置

S的推送证书,有有效期限制,一般为一年.当我们证书过期的时候,就需要重新生成证书了.有一段时间没有上苹果网站了,昨天上去一看,此奥,改版了,下边我们将重新生成一个正式环境的push推送的证书. 1.先打开钥匙串(应用程序-实用工具-钥匙串访问),请求一个证书 常用名称写为:2013.04.27_push_production_***.并保存到磁盘上. 2.进入打开苹果网站的证书标签页面,选择 Identifiers标签下边的App IDs子标签,显示下边图片.红色圈中的是我要重新生成push签名