为什么要导出.p12文件
当我们用大于三个mac设备开发应用时,想要申请新的证书,如果在我们的证书里,包含了3个发布证书,2个开发证书,可以发现再也申请不了开发证书和发布证书了(一般在我们的证书界面中应该只有一个开发证书,一个发布证书,没必要生成那么多的证书,证书一般在过期之后才会重新添加。)
如图:
这时候,再点击“+”时,就会发现点击不了开发和发布证书,也就是添加不了开发证书和发布证书了:
有两个解决不能添加证书的办法。
第一种方法——“revoke”(不推荐):
将以前的证书“revoke”掉,如图:
然后重新生成一个新的证书。
这种方法是可以的,但是会造成相应的Provisioning Profiles失效,这是小问题。但是又要重新申请证书甚至描述文件很浪费时间,所以不提倡这种做法。
第二种方法——“.p12”(推荐):
我们的每一个证书都可以生成一个.p12文件,这个文件是一个加密的文件,只要知道其密码,就可以供给所有的mac设备使用,使设备不需要在苹果开发者网站重新申请开发和发布证书,就能使用。
注意:一般.p12文件是给与别人使用的,本机必须已经有一个带秘钥的证书才可以生成.p12文件,如图:
打开钥匙串,选择我们需要的证书,右击,选择“导出“iPhone Distribition:```”:
为.p12文件填一个名字,点击存储:
填一个“密码”,“验证”和密码相同:
点击好,在桌面上就形成了一个.p12文件了:
在别人的电脑上要成功安装,须具备两个文件:
- 该证书导出的“.p12”文件。
- 苹果开发者中的与“证书”对应的“描述文件”
如果需要用于开发的,那么需要这两个文件:
.p12文件本身就是一个加密的证书,所以用这两个文件就可以让其他mac设备使用了:
拿到这两个文件后,依次双击“证书”,“.p12“文件(需要输入密码,密码就是当时生成.p12时设定的密码,),作用是加入钥匙串中,使我们的电脑具备开发的证明,”描述文件“(作用是置于xcode中,让xcode知道我们开发的合法性),添加完后就可以使用了
1,开发证书 CER文件
这个文件的申请请去
根据前边的博客大家已经知道证书、公钥、私钥的关系了。
苹果的这个开发者证书也是同样的原理,本地的request文件里包含开发者的个人信息和公钥,提交给苹果。
然后经过一系列的操作后最终可以得到一个可用的证书文件(CER文件)。所以这个CER证书里包含了开发者信息和公钥。
当开发者下载并双击打开后,这个文件会出现在钥匙串里。它与本地钥匙串里的私钥匹配之后,开发者就可以使用它了。
另外开发者证书是有develop版,和distribution版本的。
develop版主要是用于开发者调试真机来使用;distribution版本是用来分发版本用的,包括(adhoc 和 app store)。
2,证书P12文件
当CER安装到本地并与本机的私钥吻合之后。我们一般会给证书做个备份,这个备份就是个P12文件。
这个p12文件很好用,它不仅包含CER的信息,还有私钥信息,即: P12备份文件 = CER文件 + 私钥;所以有了这个p12就再也不用担心证书丢失了。
3,mobileprovition文件
如果说开发证书让苹果相信了你是一个合法的开发者的话,那么这个许可证就是为了让
你调试的真机设备(iPhone,ipad)被认为是个合法的测试设备。这个许可证就是设备的信任凭证。
当APP安装到真机上的时候,APP里的许可证信息和iPhone里的许可证如果匹配的话,就可以装的上了,否则就没法装上的。
许可证也分几种类型:develop版,adhoc版,appstore版本。这里说一下adhoc,这个版本主要是用于内部测试的版本。比如APP上线前,需要N轮的QA测试。这个就是给他们测试的。测试没问题了,再打appstore版本,测试无误后提交苹果商店。
总结:
所以大家明白了,要想打出一个可用安装在iPhone上的一个测试版本,开发者必须要有:1,开发者证书+私钥;2,许可证文件。两证齐全方可打包成功。