Certificates 证书

  • 我们从开发者中心了解到,开发者证书分为两种类型:Development Certificate(开发证书)和Production Certificate(发布证书)。两种证书都有对应的附属证书,包括推送证书、Apple Pay证书、Pass Type ID证书等等一系列附属证书。
  • 需要注意的是,当我们发布应用到 AppStore 时,发布的电脑必须具备两个条件:
  • 安装了创建这个发布证书的电脑导出的p12文件

开发者账号

  • 下载了发布证书


ios开发者证书和 开发者证书是什么_描述文件

证书的作用

当某台电脑安装开发者证书后,这台电脑是如何拥有这种能力的呢?

  • 你或者信任的团队成员)对App进行了签名。

公钥-私钥对

  • 组成,存储在你的Keychain(下简称钥匙串)中,公钥包含在证书(Certificates)中,公钥证书在本地钥匙串和开发者账号都有存储。

媒介证书

  • (Intermediate Certificate)的证书来确保我们的证书(Certificates)是经过授权而发布的。当安装好Xcode时,媒介证书就已经安装到我们的钥匙串中去了。如果你不小心删除了你的媒介证书,不用担心。你可以重新下载它。

开发者账号

  • (Developer Account)和本地(Mac)都经过验证的证书(Certificate)我们就可以利用合法的证书进行App的测试和发布了。

创建CSR文件及证书制作

1. 打开电脑中的钥匙串访问

ios开发者证书和 开发者证书是什么_描述文件_02

2. 选择菜单钥匙串访问-证书助理-从证书颁发机构请求证书

ios开发者证书和 开发者证书是什么_ios开发者证书和_03

3. 输入你的Email地址和名字,确保Email地址和名字与你注册为iOS开发者时登记的相一致

ios开发者证书和 开发者证书是什么_描述文件_04

4. 选择保存到磁盘(Saves to Disk),建议保存到桌面,方便查找

ios开发者证书和 开发者证书是什么_ios开发者证书和_05

5. 打开开发者中心,登录开发者账号

ios开发者证书和 开发者证书是什么_ios开发者证书和_06

6. 选择Certificates, Identifiers & Profiles进入,然后选择Certificates

ios开发者证书和 开发者证书是什么_描述文件_07

ios开发者证书和 开发者证书是什么_ios开发者证书和_08

7. 选择Certificates,在右侧选择添加按钮添加

ios开发者证书和 开发者证书是什么_钥匙串_09

8. 选择iOS App Development,用于真机调试的Certificates文件,点击Continue。然后接下来会让你创建CSR文件(Create a CSR file),点击Continue进入下一步上传CSR文件

ios开发者证书和 开发者证书是什么_开发者账号_10

9. 点击Choose File选择刚刚存储在桌面的SCR文件,然后点击Generate。一会就生成我们想要的证书啦!

ios开发者证书和 开发者证书是什么_开发者账号_11

ios开发者证书和 开发者证书是什么_描述文件_12

10. 我们可以将刚刚生成的证书点击Download下载到本地使用

ios开发者证书和 开发者证书是什么_描述文件_13


证书的使用

开发者账号,下载证书(cer文件)运行,只有证书没有私钥,是不能正常使用的。所以如果有新同事加入到开发组的时候,应该从本地钥匙串中选择证书,一定要记得展开证书那一条显示出私钥并将两行都选中,右键导出2项,输入密码之后就生成p12文件(包含证书和私钥)给同事。

另外可以给同事一份描述文件(Provisioning Profiles),用于本地开发识别测试设备。

开发者账号就行,同时因为原有证书过期,需要重新生成Provisioning Profiles文件。然后给同事们最新的p12文件和Provisioning Profiles文件就行开发者账号中的证书,配置文件是可以放心操作的(比如误删了,或者找不到证书私钥了)

ios开发者证书和 开发者证书是什么_开发者账号_14


Provisioning Profiles 描述文件

在这里,我引用别人的一段话,因为觉得写得很喜感,但又很实在。

ios开发者证书和 开发者证书是什么_ios开发者证书和_15

  • 我想这个界面一弹出来的时候,蛋蛋忧伤迎面扑来。然后怒点 Fix issue,然后你们团队负责管理证书的基友突然发现证书中心多了好多好乱的证书以及描述文件,然后他爆了一句:what the fuck!删掉了带有Xcode *的证书以及描述文件,然后自己又暴力的点了一发Fix issue,然后你突然调试不了了,再暴击Fix issue键,最后整个团队都只有通过Fix issue来真机调试了…
  • 所以慎点Fix issue,如果点击这个选项,聪明的(蠢哭的)Xcode就会自己管理描述文件,然后各种莫名其妙的带有Xcode *的证书以及描述文件…
  • 其实只要坚信一点,证书、设备ID、AppID、描述文件都弄对了就绝逼不会出问题的!