这事让我非常担心。我刚刚下载了iPhone 3.0 SDK,但现在我无法让我的配置文件工作。以下是我的尝试:

删除所有配置配置文件 删除登录keychain 创建新的“登录”钥匙链,使它 默认的 创建一个新的证书签名请求 创建新的开发人员和分销渠道 证书在苹果开发者中心 下载并安装它们 下载并安装WWDR证书 创建一个新的配置文件和 双击它来安装

所有的证书报告都是有效的,但是Xcode仍然不能识别它们。接下来我该试试什么?

编辑:

我完全重新安装了Mac OS X,从一个新的安装安装了3.0 SDK,仍然有同样的问题。


当前回答

我也遇到了同样的问题,试过了所有方法。不管出于什么原因,解决方案是我所有的证书都迁移到一个名为“microsoft_intermediate_certificates”的密钥链上。因为它可能发生在Xcode升级期间,我完全不知道为什么,但它可能会帮助到一些人。

我将微软钥匙串的所有内容移动到登录钥匙串,一切恢复正常。

其他回答

以下是我所做的。

Make sure your certificates have not expired, make sure you delete all the expired ones. Get new ones etc, Once you have make sure all that is the way it should be, then focus on your project files. in finder , go to your .xcodeproj files then show package contentes. open project.pbxproj in xcode or textedit. find every refrense to PROVISIONING_PROFILE and remove the GUID, just leave empty "" Depending on your project you should have about 12+ refrences, remove all of the GUIDS. Save file, then reopen your project in XCODE Re select the correct provision profiles for all possible code signings( they should not all be the same) Build your project and you should be good to go.

我认为Xcode在某种程度上混淆了,从项目中删除了所有的Provision Profiles。Pbxproj,然后重新选择一个有效的配置文件将使它直。

Because I keep coming back to this question, I will leave my answer here for the solution that works for me. It turns out that for a same public/private key developer identifier of me, it's installed twice in my keychain. Both have private key. But when I compare, one is private key of me within my developer organisation, and another one is private key of me as a personal developer. It turns out Xcode keeps trying using the wrong key. Removing the wrong duplicate key solves all the problem. Hey future me, check this one first next time!

你试过重启你的Mac和设备吗?蹩脚的回答,但我总是先试一下。

For Xcode 13 (maybe earlier?) - The key to this is to use the "Build Settings" tab, not the "Signing and Capabilities" tab in your Target Settings. Once you are in "Build Settings", search for the "Signing" section (you can type "Signing" in the search box). There you will see a sub-section called Code Signing Identity. In that section you can click on each line and directly choose any certificate you have in your keychain. You need to do that for all of the relevant configurations (the ones that you want to upload to TestFlight/AppStore). When you go back to the "Signing and Capabilities" tab, you should see the results of what you did and the error should have gone away.

我从下面的答案中得到了灵感:https://stackoverflow.com/a/37043501/826946

但我认为明确地列出这一点可能会有所帮助。

我通过

A)进入门户上的配置文件页面

b)在你遇到麻烦的配置文件上点击Edit(右边)。

c)选中相应的证书框(默认不勾选),选择正确的App ID(我的旧的已经过期了)

d)下载并使用新的配置文件。删除旧的。

显然,这个问题有4个不同的原因:

您的钥匙串缺少与您的 iPhone Developer或iPhone 发行证书。 您的钥匙链缺少苹果全球开发者关系 中级证书。 您的证书已被撤销或已过期。 在线证书状态协议(OCSP)或证书 撤销列表(CRL)被打开 钥匙串访问首选项

.