苹果有一套十分繁复的开发者证书机制, 每次梳理明白了, 过一段时间又乱了. 这篇日志记录一下梳理过程, 用来以后温习之用.
苹果开发者证书, 你一定看到过这些东西:
- certSigningRequest文件 (简称CSR文件)
- cer文件
- p12文件
- Certificates (证书)
- Identifiers (bundle id)
- Devices (设备)
- Provisioning Profiles (描述文件)
- pem文件
通过该场景, 可以将所有的这些文件联系在一起:
现在你的公司要开发iOS软件myBookApp, 公司有苹果开发者账号a, 而你是这个项目的负责人, 你手下还有两个做iOS的小弟打下手,他们分别是小明和小红. myBookApp拥有推送功能, 以下介绍这个项目如何创建证书和开发:
1.创建id
首先, 你要登陆开发者中心, 登陆开发者账号, 在 Identifiers 节点为这个项目创建一个bundle id: com.mlgbcompany.mybook, 并在下边勾选Push Notifications 推送服务.
2.创建证书.
在 Certificates节点 可以创建证书, 证书分为Development(开发证书)
和Production(发布证书). Development中的iOS App Development是开发app时用的证书, Push Notification是开发版推送证书.
Production 中的 App Store and Ad Hoc是发布app到应用商店时用的证书, Push Notification是发布版推送证书.
创建证书时, 需要上传csr文件(certSigningRequest), 这个csr文件需要在你电脑打开钥匙串, 工具栏左上角的 钥匙串访问 - 证书助理 - 从证书颁发机构请求证书, 然后保存到磁盘即可得到这个csr文件, 该文件存有设备信息, 通过这个csr文件制作的证书, 之后在本机才能获取都私钥(小钥匙图标). 我们应该妥善保管这个csr 文件. 因为以后可能会更换设备, 我们需要这个csr文件永久保存.
创建一个开发版的证书, 上传csr文件, 完成后下载该证书, 该证书为.cer文件. 双击这个文件, 会在你的钥匙串中看到这个证书, 点击证书左边的三角, 下边会出现一行, 这一行有小钥匙图标, 这是私钥, 可以导出为 p12文件. 导出p12文件以后, 就可以把这个p12分发给小明和小红, 这样他们在自己的电脑上双击p12文件, 自己的钥匙串也会多一个证书, 就可以进行开发了. 这个p12也应该保存一份, 供以后的开发者使用. 小红和小明虽然钥匙串中页有了这个证书, 但是他们的这个证书并不能展开出小钥匙, 也就是说他们只能使用这个证书却不能导出这个证书, 这就是因为这个证书是使用你的设备的csr制作的, 只有你的设备上的钥匙串才能显示小钥匙那一行.
开发版推送证书/发布版证书/发布版推送证书 都和以上同理.
3.注册设备
4.制作描述文件
... 未完待续...
最后, 我们需要保存下来的文件:
certSigningRequest文件 (更换设备后才知道这东西很有用)
证书cer文件导出的p12文件(以供后来加入项目组的开发人员使用)
...