Apple_ios推送证书配置和生成教程

戴维营教育原创文章,转载请注明出处。我们的梦想是做最好的iOS开发培训!

如何在Mac上创建.p12格式的APNS证书

2016年3月.

本教程要求你使用一台Mac电脑,并且你有一个有效的Apple 开发者账号.

1.登录Apple的Developer Member Center

  • 打开Safari浏览器,地址栏输入并打开此网址:https://developer.apple.com/membercenter/index.action,然后用开发者账号登录.

  • 选择点击Certificates, Identifiers & Profiles., 打开后在左侧列表中选择Certificates大类下面的All子类,出现如下界面:

然后点击右上方的+号图标来新创建一个证书(红色箭头所示).

2.选择证书的类型,Sandbox或者Productuon

  • 根据你的需求选择Apple Push Notification service SSL (Sandbox) 或者 Apple Push Notification service SSL (Sandbox & Production)类型的证书.
  • 然后点击继续.

这里要注意一点,选择证书的正确类型非常重要:

一个用Development Provisioning Profile签名的App生成的 Device Token只能和Sandbox APNS Server结合使用(开发环境测试用).

一个用AdHoc Provisioning Profile或者AppStore Provisioning Profile签名的App生成的Device Token只能和Production APNS Server结合使用(生产环境发布使用).

提示: 有些用户已经报告过关于使用二合一的推送证书(Apple Push Notification service SSL (Sandbox & Production),新出的 )在调试测试环境进行推送时会出问题.

3.选择你对应的App ID

  • 前提你要先已经创建了你App使用的App ID,并在App ID下拉选项中选择你对应的App ID.
  • 点击继续按钮继续.

4.查看创建证书签名请求相关步骤信息

  • 查看一下如何创建一个CSR文件的信息.
  • 点击继续.

该页面有关于如何一步一步创建CSR文件的详细信息,下面我们就跟着一步一步来创建CSR文件.

5.打开钥匙串访问程序

打开Launchpad中的其他组的Keychain Access App,就是钥匙串访问程序.

6.创建证书签名请求文件

  • 点击钥匙串访问程序的菜单栏
  • 选择证书助理子菜单
  • 选择从证书颁发机构请求证书...子子菜单

7.填写证书签名请求文件详细信息

  • 输入email地址,为了安全和保险起见,最好填写和你Apple开发者账号对应的email地址.
  • 接着输入常用名称.
  • 最好选择存储到磁盘选项.
  • 最后点击继续.

8.保存证书签名请求文件到磁盘

  • 选择一个存储位置以及输入一个你喜欢的文件名称
  • 点击保存

9.完成证书签名请求文件制作

  • 直接点击完成

10.上传正确签名请求文件

  • 继续回到第四步后的浏览器界面
  • 选择 Choose File...来上传
  • 在弹出的文件打开对话框中定位到刚刚存储的证书签名请求文件所在目录,并选择打开该CSR文件.
  • 点击继续

11. 下载证书文件

  • 上一步继续之后,你的证书应该就已经生成好了.
  • 点击下载按钮来下载证书
  • 打开下载的证书文件,一般会自动用钥匙串访问程序打开的.

12.找到证书和私钥

  • 在钥匙串访问程序中找到刚刚打开导入的证书
  • 然后点击右三角展开证书,显示出对应的私钥

13.导出私钥文件

  • 在对应的证书下面仅选中私钥部分
  • 在私钥部分右键
  • 在弹出的选择框中点击 导出常用名称 菜单

14. 保存导出的私钥文件

  • 选中一个存储的位置并输入喜欢的私钥文件名
  • 格式选择.p12格式
  • 点击存储

15. 给.p12文件设置可选密码保护

  • 如果有需要,可以为存储的.p12文件设置一个保护密码.
  • 然后点击,或者直接点击而不设置密码.

大功告成

现在你已经拥有了一个.p12格式的文件,该文件包含了和Apple的APNS服务器建立SSL/TLS安全通信的私钥. 你可以把该.p12文件上传到你的推送服务器并配置使用了.

本文翻译自: https://github.com/Redth/PushSharp/wiki/How-to-Configure-&-Send-Apple-Push-Notifications-using-PushSharp 致谢.

戴维营学院(高级开发视频): http://v.diveinedu.com

潜心俱乐部(iOS面试必备): http://divein.club