一个 Xcode 管理器中的多个证书/配置文件?
Posted
技术标签:
【中文标题】一个 Xcode 管理器中的多个证书/配置文件?【英文标题】:Multiple Certificates/Provisioning Profiles in one Xcode organizer? 【发布时间】:2011-06-24 19:50:47 【问题描述】:这里有几个类似的问题,但没有一个可以回答我的基本问题:
是否可以在钥匙串中有两个单独的开发者证书,在 Organizer 中有两个对应的分发配置文件?
我有自己的(工作)开发人员证书和用于我自己的 iPhone 应用程序的配置文件。 现在我为客户完成了一个项目,并想使用他的开发者帐户/证书/配置文件将他的应用提交到他帐户上的应用商店。
这可能吗?
到目前为止,我下载并安装了他的证书,它们显示在我的钥匙串中,我在 Organizer 中安装了他的配置文件,但 Organizer 告诉我“在你的钥匙串中找不到与此配置文件匹配的有效签名身份。”。 同样,存档构建失败。
我找不到方法告诉 Organizer 使用我客户的证书而不是我自己的证书 - 我认为这是问题所在。
感谢您的帮助!
【问题讨论】:
您是否在构建设置中设置了适当的值? 我无法将代码签名身份设置为分发配置文件 - 它显示为灰色,可能是因为 Organizer 找不到签名身份。但它现在可以工作了,见下文。 【参考方案1】:是的,我已经多次使用他们的分发证书为客户制作应用商店的项目版本。无需使用他们的开发者证书。这里有很多事情可能会出错,如果您可以访问客户的帐户,您可以转到配置门户并检查一下:
确保项目设置中的捆绑包 ID 与 ios 配置门户上的应用 ID 完全匹配(通常为 com.company.appname)
确保应用商店分发配置文件标记为“有效”并显示在分发证书下。
确保 xcode 中的应用商店构建配置引用客户端的分发证书。
打开您的钥匙串并确保客户端分发证书也有其随附的私钥。这可能是问题所在,这是通常被遗漏的部分。客户端必须导出他的 dist 证书的私钥,并在 .p12 文件中将其连同 .p12 文件的密码一起发送给您。没有私钥就不能使用 dist 证书对应用进行签名!
有时只是退出 Xcode 并重新启动它会有所帮助。
【讨论】:
这正是我希望的那种检查清单,你是对的,我错过了私钥。现在完美运行。非常感谢你,你让我很开心。 很高兴能够帮助您摆脱“签约失败地狱”。如果 Apple 错误消息说“证书丢失私钥”不是很好吗? “有时只是退出 Xcode 并重新启动它会有所帮助”在我的情况下有效,如果您遇到此问题,我建议您将其作为您的 第一步 步骤【参考方案2】:请参阅此复制证书的解决方案:http://tapadoo.com/2012/certificates-magically-re-appearing-in-your-keychain-try-this/
要点是,如果您有旧的私钥和配置文件,您可能会遇到 Xcode 会在您的钥匙串中重新创建旧证书的情况。这将使代码签名变得笨拙,因为它需要具有给定名称的单个证书。删除旧私钥将解决此问题。
【讨论】:
虽然理论上可以回答这个问题,it would be preferable 在这里包含答案的基本部分,并提供链接以供参考。【参考方案3】:简易模式
(我非常讨厌这些古老的导出错误。浪费了这么多时间。我不信教,但我仍然祈祷这对你有帮助)
登录https://developer.apple.com 转到证书、标识符和配置文件 左下:配置文件 删除所有重复/无效的配置文件(在我的情况下,我只有一个,但它是无效的)注意:如果您尝试导出档案,您可以让导出窗口保持打开状态,删除一个配置配置文件,然后点击“重试”或按钮上显示的任何内容。这将使您不必一遍又一遍地重新存档
#xcode8.2.1 #osx10.11.6
【讨论】:
以上是关于一个 Xcode 管理器中的多个证书/配置文件?的主要内容,如果未能解决你的问题,请参考以下文章