什么是iOS P12文件?
P12文件是一种Personal information exchange,只要知道其密码,就可以供给所有的mac设备使用,使设备不需要在苹果开发者网站重新申请开发和发布证书,就能使用。
为什么要导出P12文件
原因有两点:
1、当CER安装到本地并与本机的私钥吻合之后。我们一般会给证书做个备份,这个备份就是个P12文件。
这个p12文件很好用,它不仅包含CER的信息,还有私钥信息,即: P12备份文件 = CER文件 + 私钥;所以有了这个p12就再也不用担心证书丢失了。
2、当我们用大于三个mac设备开发应用时,想要申请新的证书,如果在我们的证书里,包含了3个发布证书,2个开发证书,可以发现再也申请不了开发证书和发布证书了(一般在我们的证书界面中应该只有一个开发证书,一个发布证书,没必要生成那么多的证书,证书一般在过期之后才会重新添加。)
如图:
这时候,再点击“+”时,就会发现点击不了开发和发布证书,也就是添加不了开发证书和发布证书了:
有两个解决不能添加证书的办法。
第一种方法——“revoke”(不推荐):
将以前的证书“revoke”掉,如图:
然后重新生成一个新的证书。
这种方法是可以的,但是会造成相应的Provisioning Profiles失效,这个可大可小。如果只有你一个人则问题不大,如果是一个团队大家都在用,你把这个证书删除了,会导致别人的描述文件失效,这意味着别人不能发布应用了(还可以开发),这可是大问题,所以不提倡这种做法。
第二种方法——“.p12”(推荐):
我们的每一个证书都可以生成一个.p12文件,这个文件是一个加密的文件,只要知道其密码,就可以供给所有的mac设备使用,使设备不需要在苹果开发者网站重新申请开发和发布证书,就能使用。
注意:一般.p12文件是给与别人使用的,本机必须已经有一个带秘钥的证书才可以生成.p12文件,如图:
打开钥匙串,选择我们需要的证书,右击,选择“导出“iPhone Distribition:“`”:
为.p12文件填一个名字,点击存储:
填一个“密码”,“验证”和密码相同
点击好,在桌面上就形成了一个.p12文件了:
在别人的电脑上要成功安装,须具备两个文件:
该证书导出的“.p12”文件。
苹果开发者中的与“证书”对应的“描述文件”
如果需要用于开发的,那么需要这两个文件:
.p12文件本身就是一个加密的证书,所以用这两个文件就可以让其他mac设备使用了:
拿到这两个文件后,依次双击“证书”,“.p12“文件(需要输入密码,密码就是当时生成.p12时设定的密码,),作用是加入钥匙串中,使我们的电脑具备开发的证明,”描述文件“(作用是置于xcode中,让xcode知道我们开发的合法性),添加完后就可以使用了。
当其他设备导入P12文件时,在钥匙串访问查看该证书会发现该证书出现红色提示:“此证书的签发者无效”。
先检查证书是否过期,该证书过期也会导致其他iOS证书提示“此证书的签发者无效”的警告
如果过期,则需要重新导出P12文件,再安装。
如果没有过期,则双击提示“此证书的签发者无效”警告的证书,打开它的属性窗体,
在属性窗体中红框标注项默认值是“使用系统默认”,改成“始终信任”,然后保存设置
完成后,原来红色的提示信息变成了“此证书已标记为受此账号信任”。这样就解决“此证书的签发者无效”的问题
参考:http://jingyan.baidu.com/article/49711c617a540cfa441b7c86.html
http://my.oschina.net/u/1245365/blog/196363
如有纰漏,欢迎指出