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. 导出的时候,会要求输入password。例如以下图:
23. 输入password。点击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期间会要求输入password(导出的证书的password和新生成的证书的password),按要求输入就能够了。例如以下图:
执行完成后。会在Gen下生成几个文件。当中iphone_dev.p12就是供服务端使用的证书。
使用新证书对程序签名
当然。我们打包的时候要用新的证书和Profile。例如以下图:
在Project下,
在Target下,
接下来。就是打包了。
当然,还须要在服务端实现通知的推送。
參考:
https://www.geek-share.com/detail/2607251720.html
http://stackoverflow.com/questions/7213074/notnoop-java-apns-push
- iOS推送证书从申请到使用
- iOS推送证书从申请到使用
- iOS 推送,证书申请,本地推送
- Flash开发iOS应用全攻略(三)——如何使用iOS开发者授权以及如何申请证书
- iOS 推送 证书申请 本地推送
- Flash开发iOS应用全攻略(三)——如何使用iOS开发者授权以及如何申请证书
- 开发iOS应用全攻略(三)——如何使用iOS开发者授权以及如何申请证书
- 如何使用iOS开发者授权以及如何申请证书
- iOS——关于创建真机调试证书(发布证书,测试(调试)证书,推送调试证书)、iOS开发者账号申请 请用开发者账号去iTunes connect 查看状态
- [IOS]用新申请的开发者账号获取开发证书/发布证书/推送证书
- iOS-APNS证书申请与使用
- 如何使用iOS开发者授权以及如何申请证书
- 如何使用iOS开发者授权以及如何申请证书
- iOS APNS远程推送证书的申请和制作——详细解析
- Flash开发iOS应用全攻略(三)——如何使用iOS开发者授权以及如何申请证书
- XE7 & IOS开发之开发账号(3):证书、AppID、设备、授权profile的申请使用,附Debug真机调试、Ad hoc下iPA文件生成演示(XCode5或以上版本推荐,有图有真相)
- Flash开发iOS应用全攻略(三)——如何使用iOS开发者授权以及如何申请证书
- XE7 & IOS开发之开发账号(1):开发证书、AppID、设备、开发授权profile的申请使用,附Debug真机调试演示(XCode所有版本通用,有图有真相)
- 发布iOS应用全攻略(二)——如何使用iOS开发者授权以及如何申请证书
- 如何使用iOS开发者授权以及如何申请证书