Mac 开发证书申请流程和 iOS 基本一致,都是
- 生成钥匙串文件;
- 请求证书;
- 创建 ID
- 添加设备 ID
- 创建配置文件
这里不做赘述,下面主要描述一下 Mac 上和 iOS 不同的一些特性。
一、Mac Certificates 证书
如图中文字可知:
1. Mac Development
Mac 开发证书
2. Apple Push Notification service SSL (Sandbox)
推送开发证书
3. Mac App Store (企业账号没有这个证书)
上架到 Mac App Store 的 app 和 pkg 包的发布证书。
4. Apple Push Notification service SSL (Production)
推送的发布证书。
5. Website Push ID Certificate
网页签名和更新证书。
可参考:https://stackoverflow.com/questions/17168503/what-the-use-of-website-push-id-and-how-it-differs-from-the-normal-apns
6. Developer ID
不上架 Store 的 Mac app、拓展驱动、pkg 的发布证书。
PS:
- 这几种证书都有数量限制, Development 证书生成后,可以删除;发布证书就不能随意删除了,删除需要电话或邮件到苹果公司。
- PKG 签名,不需要配置文件和 id。
二、配置文件
1. Mac App Development
开发用的配置文件
2. Developer ID
发布用的配置文件.
3. Mac App Store(企业账号没有这个配置)
上架 App store 的配置文件。
三、设备 Device
设备的注册数量是有限制的,而且有记忆。
如果添加了设备,然后删除,设备的名额还是会被占用
四、注意事项
1、PP(配置文件)安装失败
PP 双击后,会弹出安装框;
如果安装失败,可能是 PP 没有配置你本机对应的 UUID。
公司证书 & 企业证书
2、建议删除过期PP
如果多次修改pp,建议删除本地所有 pp,然后在 xcode 中选中最新的 pp,否则过去的pp 不包含最新配置的证书等信息,会报错。
3、Automatically manage signing 会影响 capabilities
如果选择 Automatically manage signing , 但没有适合的证书和pp,可能导致 capabilities 里面一些选项不可选.
如下报错: 7 Capabilities Unavailable
4、p12 文件共享
注意,在电脑A 创建钥匙串文件申请到证书后。电脑B开发时,A需要生成 p12 文件给 B 来使用。
否则会导致 Not In Keychain / Missing private key for signing certificate
的问题。
可参考:https://blog.csdn.net/lovechris00/article/details/84887114