p12,本地私钥(实际上证书和私钥可以一起导出成p12,这里我们仅指私钥)
cer,证书,即苹果签名后的公钥
provisioning profile描述文件
一个证书对应一个私钥,也就是本地的p12,所以当多个开发者公用一个开发者账号进行开发时,开发的时候每个人的电脑上都会生成一个私钥,相应的开发者网站上都会对应一个证书,(苹果现在的限制是最多允许10个证书),同时xcode自动生成的provisioning profile中也需要包括这10个证书,这样在真机调试时provisioning profile就可以通过其中包含的证书去验证app的签名,当用自动签名时,如果xcode发现当前的证书没有在provisioning profile中,它会自动生成一个provisioning profile,使其包含当前的证书。
在配置工程进行手动签名时,签名的证书需要包含在provisioning profile中。这里设置签名的证书只是签名的第一步,真正签名的时候xcode会通过该证书找到对应的私钥进行签名。
最终验证app的签名是否有效及app能否被装在iPhone上是通过provisioning profile来进行验证的。
这几个文件的产生顺序为, p12->cer->provisioning profile,cer变了的话就要重新生成provisioning profile