Certificates 证书
- 我们从开发者中心了解到,开发者证书分为两种类型:
Development Certificate
(开发证书)和Production Certificate
(发布证书)。两种证书都有对应的附属证书,包括推送证书、Apple Pay证书、Pass Type ID证书等等一系列附属证书。 -
需要注意的是,当我们发布应用到 AppStore 时,发布的电脑必须具备两个条件:
- 安装了创建这个发布证书的电脑导出的p12文件
- 从
开发者账号
下载了发布证书
证书的作用
当某台电脑安装开发者证书后,这台电脑是如何拥有这种能力的呢?
- 苹果在此运用了代码签名技术。代码签名验证允许我们的操作系统来判断是谁(你或者信任的团队成员)对App进行了签名。
- Xcode会在项目编译期间使用你的代码签名验证,这个验证由一个由Apple认证过的
公钥-私钥对
组成,存储在你的Keychain
(下简称钥匙串)中,公钥包含在证书(Certificates)中,公钥证书
在本地钥匙串和开发者账号都有存储。 - 另外,还有一个我们可以叫做
媒介证书
(Intermediate Certificate)的证书来确保我们的证书(Certificates)是经过授权而发布的。当安装好Xcode时,媒介证书
就已经安装到我们的钥匙串
中去了。如果你不小心删除了你的媒介证书
,不用担心。你可以重新下载它。 - 通过在
开发者账号
(Developer Account)和本地(Mac)都经过验证的证书(Certificate)我们就可以利用合法的证书进行App的测试和发布了。
创建CSR文件及证书制作
1. 打开电脑中的钥匙串访问
2. 选择菜单钥匙串访问
-证书助理
-从证书颁发机构请求证书
3. 输入你的Email地址和名字,确保Email地址和名字与你注册为iOS开发者时登记的相一致
4. 选择保存到磁盘(Saves to Disk),建议保存到桌面,方便查找
5. 打开开发者中心,登录开发者账号
6. 选择Certificates, Identifiers & Profiles
进入,然后选择Certificates
7. 选择Certificates
,在右侧选择添加按钮添加
8. 选择iOS App Development
,用于真机调试的Certificates
文件,点击Continue
。然后接下来会让你创建CSR文件(Create a CSR file),点击Continue
进入下一步上传CSR文件
9. 点击Choose File
选择刚刚存储在桌面的SCR文件,然后点击Generate
。一会就生成我们想要的证书啦!
10. 我们可以将刚刚生成的证书点击Download
下载到本地使用
证书的使用
如果开发者B,登录开发者账号
,下载证书(cer文件)运行,只有证书没有私钥,是不能正常使用的。所以如果有新同事加入到开发组的时候,应该从本地钥匙串中选择证书,一定要记得展开证书那一条显示出私钥并将两行都选中,右键导出2项,输入密码之后就生成p12文件(包含证书和私钥)给同事。
另外可以给同事一份描述文件(Provisioning Profiles),用于本地开发识别测试设备。
需要强调一点,证书和项目关系其实并不大,证书一般有效期只有一年,当证书过期后,只需要重新生成一份证书,上传到开发者账号
就行,同时因为原有证书过期,需要重新生成Provisioning Profiles
文件。然后给同事们最新的p12文件和Provisioning Profiles文件就行
所以开发者账号
中的证书,配置文件是可以放心操作的(比如误删了,或者找不到证书私钥了)
Provisioning Profiles 描述文件
在这里,我引用别人的一段话,因为觉得写得很喜感,但又很实在。
- 慎点Fix issue,如果点击这个选项,聪明的(
蠢哭的)Xcode就会自己管理描述文件,然后各种莫名其妙的带有Xcode *的证书以及描述文件...- 其实只要坚信一点,证书、设备ID、AppID、描述文件都弄对了就绝逼不会出问题的!
描述文件过期
苹果官方文档写明,企业证书有效期是3年,而描述文件只有1年有效期。所以当你的描述文件过期(expire)时。不用慌张,我看到网上好多朋友说删除重新生成,其实不用这么麻烦,只需要3步完成:点击过期的描述文件展开详情界面
-点击Edit按钮
-点击Generate按钮
再一次感谢您花费时间阅读这篇文章!
微博: @Danny_吕昌辉
博客: SuperDanny