/ ios

No signing certificate "iOS Distribution" found

问题背景

iOS项目打包的时候需要两套文件:

  • 开发者账号的签名证书 signing certificate (一套签名:包含证书.cert和私钥.p12两个文件)
  • 应用的签名文件 provision (一般文件后缀.mobileprovision)

一个常见的错误就是

No signing certificate "iOS Distribution" found

或者

No signing certificate "iOS Development" found

no-signing-certificate-iOS-distribution-found-01

解决方法

这种情况,就需要检查两套文件是否都齐全。

检查开发者证书

打开钥匙链 keychain,检查相关的开发证书是否安装,并且左边有个展开按钮,表示已经安装了私钥。

如果看到证书没有展开按钮,则表示私钥没有安装,在XCode中点击“Manage Certificates”按钮,会提示 “Missing Private Key”

no-signing-certificate-iOS-distribution-found-missing-private-key

需要从申请证书的原始电脑上重新导出私钥.p12文件。

app-developer-certification
(图片来自https://www.jianshu.com/p/b486ebe6e36a)

检查描述文件

检查描述文件是否正确,主要是用以生成该描述文件的证书是否有效。

重启XCode

重新安装证书后,需要完全重启XCode,因为XCode不会自动更新证书情况。

一切正常的话,应该是这样子:
no-signing-certificate-iOS-distribution-found-03

参考