没有可用于签署 Xcode 5 的身份

Posted

技术标签:

【中文标题】没有可用于签署 Xcode 5 的身份【英文标题】:No identities are available for signing Xcode 5 【发布时间】:2013-09-11 16:36:33 【问题描述】:

尝试在 Xcode 5 中验证我的应用程序时出现错误“没有可用于签名的身份”。我尝试了所有方法:重新创建证书和配置文件、本网站和其他资源中描述的所有方法;我很困惑,因为当我尝试将我的应用程序作为 Ad-hoc 分发时,它成功地在测试设备上创建并安装了一个 IPA 文件。但是当我尝试验证我的应用程序或提交到 AppStore 时,我总是遇到错误。也许有人可以帮助我解决这个问题。

【问题讨论】:

这里的情况完全相同。能够构建/分发临时但不能应用商店。如果您找到解决方案,请回复。 Xcode5 GM crashes, "no identities are available for signing" then crash的可能重复 【参考方案1】:

您需要做的就是:

    转到开发者中心的证书、标识符和配置文件

    在“Provisioning Profiles”/“Distribution”中创建新的配置文件

    下载配置文件并打开

    重启 Xcode

【讨论】:

谢谢 Mavis,不知道为什么你的答案没有得到更多的支持,在经历了广泛的恐慌、沮丧和谷歌搜索之后,它对我有用:) 打开文件是关键,我从来不知道.. . 再次感谢。 不需要步骤 3 和 4。它们被替换为: -> 转到 Xcode > Preferences > Accounts > Apple ID used > View Details。按刷新按钮,以便下载配置文件。下载后,单击完成。现在您可以验证并提交了! 确保在创建配置文件时使用相同的应用程序 ID 和在 XCode 中的应用程序 ID,否则将无法正常工作.. ;) 即使在 xcode 5.1.1 上,我仍然必须重新启动 xcode 才能使其正常工作。有点蹩脚。 我花了一个小时,因为官方文档没有提到第 4 步。【参考方案2】:

请确保您使用的是分发配置文件,而不是开发。 并且 Xcode 中的代码签名设置与分发配置文件兼容。

【讨论】:

+1000 是解决我的问题的唯一答案。在经历这个荒谬的过程之前,我认为我不会比我更讨厌苹果了。我错了。 这也解决了我的问题。我的证书已经过期,所以我自然而然地选择了一个开发者证书,认为它是用于分发的。开发人员证书仅适用于在您的设备上进行测试。转到“证书、标识符和配置文件”并检查您的分发证书是否有效。由于我分发了很多应用程序,我有超过 10 个过期。 这方面的一个小变化:配置文件可能用于分发,但用于临时/企业分发,并且在查看或编辑证书时无法判断。创建一个新的配置文件会显示该选项,然后按预期工作(我相应地命名了配置文件以避免将来混淆)。 您没有提及创建App Store 分发配置文件而不是Ad-Hoc。我已经创建了App store 分发配置文件并且一切正常。【参考方案3】:

验证过程不适用于 Ad-hoc 配置文件。需要创建分发配置文件。 Beta 测试说明中未指定。我痛苦了一整天,直到意识到。

【讨论】:

+1000 当您尝试使用临时配置文件进行验证时,XCode 不会让您知道,而是毫无歉意地崩溃。 你确定吗?我创建了一个分发配置文件,但用于临时并且仍然得到它。分发配置文件是什么意思? @Dejel 确切地说——有两种“分发配置文件”。我一直很高兴地与我的测试人员一起迭代,使用我命名为“分发配置文件”的配置文件。创建了另一个“App Store Distribution Profile”并在其中一个选项中选择了“app store”,一切都很好。这是一个命名冲突!突然使用“身份”而不是个人资料或签名...... ehhhh。 如果可以的话+2。非常感谢!【参考方案4】:

使用应用程序加载器(Xcode -> 打开开发者工具 -> 应用程序加载器)。

另外 - 这个答案/问题也可能对您有所帮助: https://***.com/a/18914073/730172

【讨论】:

如何验证那里的版本?【参考方案5】:

重新启动 Xcode 为我解决了这个问题!重新启动和/或清理可解决 99% 的所有问题...

【讨论】:

非常感谢,重新启动 x-code 对我来说已经足够了。但是你给出的错误信息根本没有给你一个尝试的线索......【参考方案6】:

@CainaSouza 上面的评论对我有用。我什至不必创建任何新的配置文件。

我只需要转到 Xcode > Preferences > Accounts > (Apple ID) > View Details 并点击刷新按钮。一两分钟后,它完成并加载了我的配置文件。我什至不必在我的项目选项中选择它,它已经选择了我最近生成的一个。

【讨论】:

我尝试了这里建议的许多东西的几种组合,但没有任何效果。刷新。杀死XCode派生数据目录(/Users/YourLoginName/Library/Developer/DerivedData)并重新启动XCode【参考方案7】:

清理您的产品构建文件夹(使用 Alt 按钮) 重启 Xcode

它解决了我同样的问题

【讨论】:

【参考方案8】:

我遇到了类似的问题。发现捆绑包标识符与 iTunes 连接上的应用程序 ID 不匹配 - 它的大小写不同。通过使标识符匹配修复了该问题。

【讨论】:

【参考方案9】:

是的,appID 和包标识符必须匹配。请记住,它是区分大小写的。这就是我的问题。

【讨论】:

【参考方案10】:

我更新到 Maverick 和 Xcode 5 并遇到了同样的问题,即使我在 Profiles 中一切正常。我创建了一个新的分发配置文件(与旧配置文件相同),通过刷新配置文件添加它,问题在没有重建的情况下得到解决。

【讨论】:

【参考方案11】:

Apple 决定在升级到更新的 Xcode 后从他们的站点“神奇地消失”我的分发配置文件,这也给了我这个问题。

只有在我发现这个事实后,解决方案才显而易见!

-创建新的分发配置文件

-下载并安装它/在帐户详细信息下刷新 Xcode 首选项

【讨论】:

【参考方案12】:

我通过删除旧的开发/分发配置文件并使用新名称创建新配置文件来解决此问题。

【讨论】:

【参考方案13】:

Xcode 中的 Bundle Identifier 与 Developer.Apple.Com 上的 App ID(证书、标识符和配置文件)不匹配。 This *** post 对我帮助很大。如需更多信息,请查看this blog post。 touch命令的官方文档可以在here找到。在执行以下操作之前,我已经退出了 Xcode。完成以下详细信息并重新打开 Xcode 后,我的问题得到解决。

使用文本编辑器更新bundle标识符以匹配App ID,Info.plist文件位于:

项目名称 > 项目名称 > 项目名称 > 项目名称-Info.plist

您正在寻找以下几行:

<key>CFBundleIdentifier</key>
<string>MyCompany.$PRODUCT_NAME:rfc1034identifier</string>

更新值以匹配您的 App ID,例如:

<string>com.MyCompany</string>

使用终端发出触摸命令,确保您在上面列出的目录中:

touch ProjectName-Info.plist

【讨论】:

【参考方案14】:

如果您使用的是 Xcode 5.1 或更高版本(您现在应该是),这对我有帮助:Code signing broken on Xcode 5.1 + ios 7.1

关键是在你的 Mac 上删除旧的配置文件,然后从 Apple 网站创建一个新的(使用不同的名称?)并下载它。看起来 Xcode 5.1 损坏了现有的配置文件,即使您再次重新下载它也无济于事。

【讨论】:

***.com/questions/18923095/… 删除配置文件。【参考方案15】:

我的解决方案是进入开发中心,找到分发配置文件,但它已过期。所以我点击了编辑,更新了它,下载了它,安装了它,在构建设置中选择了配置文件,它就可以工作了。

某人。

【讨论】:

【参考方案16】:

在我 20 多年作为软件开发人员所面临的所有开发问题中,没有一个像 Xcode 中的代码签名/配置文件垃圾那样浪费了这么多时间。

这周,我浪费了 8 多个小时来尝试构建我们的 iPhone 应用程序的临时版本。过去,它只是工作,我可以存档,在我们的内部网页上粘贴一个下载按钮,用户可以从这个页面安装我们的应用程序。

但是,本周,我遇到了同样的“没有可用的身份”问题,如下所述。

最终,这就是为我解决问题的方法:

当我登录绝望的Apple Developers网站时,它显示我们公司有2个“iOS Distribution”证书。它们是有效的,它们的到期日期还有几个月的时间,并且在 Keychain Access 应用程序中,证书已安装并且有效......这里没有问题。

但是解决我的问题的是删除这两个证书,重新创建一个新证书,然后重新创建我的“内部”配置文件(因为原来的现在显示为无效,因为它使用旧的“iOS Distribution”证书)。

我还进入了 MacBook 上的“钥匙串访问”应用程序,并删除了所有“iOS 分发”钥匙串。

然后,我下载了新的证书和配置文件,现在,Xcode 最终会报告我可以使用一个身份进行代码签名。

致 Xcode 开发团队:

请。解决这个问题。

如果像我这样的开发者碰壁了,无法获得有效的配置文件,这将导致一个可下载的应用程序,每次都会失败并显示“此时无法下载该应用程序”消息.. 不允许使用存档功能。

相反,告诉用户问题出在哪里。帮助他们解决这个问题,而不是通过动作,并愉快地允许他们创建永远无法使用的档案。

如果 Ad-Hoc 安装无效,请在日志中添加一些内容以解释出现了什么问题,并使其可从 Xcode 访问。目前,您的“目前无法下载该应用”消息既无用又具有误导性。

最后一件事(如果有帮助的话):

我们公司不小心让它的 Developer Enterprise Program 许可证在上个月到期。然后我们确实更新了,一切似乎又好了,但也许在幕后,这搞砸了我们的“iOS Distribution”证书?也许,不是。从 Apple 网站的角度来看,一切都很好。

【讨论】:

【参考方案17】:

我的问题是我的 Bundle Identifier 中有 none.myApp,而在 AppID 中有 com.myApp。

这让我发疯了好几个小时。

【讨论】:

【参考方案18】:

我今天遇到了这个问题,它似乎与个人资料以数字开头的面孔有关。我删除了配置文件并以完全相同的方式重新创建了它(在 SO 上找到了许多其他故障排除步骤之后),除了这次我从一个单词而不是一个数字开始。巧合?不确定,但值得一试。

【讨论】:

【参考方案19】:

昨天遇到了这个问题,不管我做什么都想不通!为了解决这个问题,我在 Xcode 中的 Project 和 Target 都去了,在代码签名下,选择了

代码签名身份:不要代码签名 配置文件:无

构建,然后是产品 > 存档,现在 Organizer 选择了正确的代码签名身份和配置文件以允许它进入验证步骤。哇哦!

【讨论】:

【参考方案20】:

更新 Xcode 后发生在我身上。

我修复了以下操作

将登录改为“无登录”

重启 Xcode

将其设置为正确的符号

重新归档构建

希望对你有帮助

【讨论】:

【参考方案21】:

Apple Documentation

“如果 Xcode 没有找到签名身份,则会出现一个对话框,说明“没有可用于签名的身份”。在继续之前,请确认您拥有分发证书和临时配置文件。

如果您在创建 iOS App Store 包时临时配置文件未出现在“配置文件”弹出菜单中,请在 Xcode 中刷新配置文件,如“在 Xcode 中刷新配置文件”中所述。”

【讨论】:

【参考方案22】:

在我的例子中,我想设置的临时配置在 Build SettingsCode Signing 中是不可选择的强>。不过,我从开发人员商店创建并下载了临时配置。这里提到的答案对我不起作用。 常规选项卡中的修复问题按钮通过自行下载所需的临时配置文件来修复问题。

【讨论】:

【参考方案23】:

创建新证书,Apple 开发中心的 Profile 对我不起作用!我尝试编辑配置文件/证书并再次下载并双击以安装在 KeyChain 中,但仍然无法正常工作。我重新启动了 XCode(El Capitan 上的版本 7 和 Mac),重新启动了 Mac,但仍然无法正常工作!

对我有用的是: XCode -> Preferences -> Accounts - 然后我删除了 Apple ID。 关闭我的 Mac,然后重新启动它。 启动我的 XCode,添加 Apple ID,查看 Apple ID 中的详细信息并再次下载临时配置文件,然后它才开始工作!

【讨论】:

【参考方案24】:

重启解决了我的问题。我有一个新的 mac 并尝试下载配置文件,无论如何应该已经转移了。重启解决了。

【讨论】:

您的回答没有提供任何信息,而该信息的许多其他答案之一未提供该信息。

以上是关于没有可用于签署 Xcode 5 的身份的主要内容,如果未能解决你的问题,请参考以下文章

Xcode5 GM 崩溃,“没有可用于签名的身份”然后崩溃

iOS 没有可用于签名的身份

用于签署“AppName”的证书已过期或已被撤销。签署和安装应用程序需要更新的证书

xcode 5:代码签名身份列表不完整

引用的框架需要 Xcode6 代码签名吗?

用于签名的 Xcode 9.2 证书已过期或被吊销