【问题标题】:Code Sign error: No unexpired provisioning profiles found that contain any of the keychain's signing certificates代码签名错误:未找到包含任何钥匙串签名证书的未过期配置文件
【发布时间】:2012-04-16 11:43:47
【问题描述】:

我想我已经达到了iOS 供应地狱的最低点。在迁移到新的 mac 并进行归档以进行分发后,我收到了错误:

代码签名错误:未找到未过期的配置文件,其中包含 任何钥匙串的签名证书

然后,我按照 Apple 的说明手动删除了所有证书和密钥以及配置文件,并进行了“硬重置”(删除所有密钥、证书和配置文件),但出现了同样的错误。然后我又做了一次硬重置,然后让 Xcode 通过 Organizer 处理整个事情,又做了一个存档 - 只是看到同样的错误。

我在 Keychain Access 中显示了所有证书(WDRCADeveloper ID Cert AuthorityiPhone DeviPhone Distribution),Xcode 显示它看到了开发和分发证书以及配置文件,所有标有绿色复选标记和“有效”状态。

应用内的代码签名显示选择了正确的开发和分发。

真正令人不安的是,谷歌搜索错误显示来自 Apple 的 one tech note 不是很有帮助,2 条推文和 3 个日语结果 - 仅此而已。我联系了其中一位推文,他说他修复了一个艰难的结果,我已经做了两次。

关于去哪里或下一步做什么有什么想法吗?

【问题讨论】:

标签: ios code-signing ios-provisioning


【解决方案1】:

这是因为您在添加平台时授予了 SUDO 权限。

点击此链接Ionic Code Sign error: No unexpired provisioning profiles

【讨论】:

  • 鼓励链接到外部资源,但请在链接周围添加上下文,以便您的其他用户了解它是什么以及为什么存在。始终引用重要链接中最相关的部分,以防目标站点无法访问或永久离线。
【解决方案2】:

在构建设置中查找

常规 > 身份 > 捆绑标识符和团队设置。填写捆绑标识符并选择团队。 (这基本上是您的发布信息)。当然,正如其他人所写,您需要正确的开发人员或团队帐户。此解决方案对我有用并解决了构建错误。

【讨论】:

    【解决方案3】:

    错误原因

    如果您没有将任何有效的配置文件下载到系统的 Library/MobileDevice/Provisioning Profiles 文件夹,那么您可能会遇到此错误。

    解决方案

    从 Xcode->Preferences->Accounts 登录到您的 Apple 开发者帐户,然后下载有效的配置文件。

    移动到 Target->General 并选择正确的团队。

    现在转到 Project Build Settings->Code Signing Identity 并在 Provisioning Profiles 中选择“iOS Developer”和“Automatic”。您的应用将顺利运行。

    【讨论】:

      【解决方案4】:

      升级到Xcode 4.3.2SDK 5.1 后我遇到了同样的问题。在XcodeSDK 5.0 的先前版本中,一切都运行良好。经过数小时的拉扯后,我在iOS Provisioning Portal->Provisioning-> Distribution Tab 中创建了一个新的分发证书,在下载它并将其安装到Xcode(拖放)后,它可以在Code Signing area 中选择新证书后存档我的目标。

      【讨论】:

        【解决方案5】:

        在删除所有 devices/profiles/certificatesadding/creating 后,它仍然无法在这里工作......同样删除 Xcode 首选项也没有帮助。

        但似乎在项目设置中,检查CODE_SIGN_IDENTITIY下的构建设置,在我的项目中,第一行设置为旧配置文件但在列表中不可见,只有在您打开下拉菜单后,删除它起作用了。

        【讨论】:

          【解决方案6】:

          修复它。 转到项目-> 常规-> 找到一个选项“未找到配置文件”修复问题按钮。点击它。自动修复

          【讨论】:

            【解决方案7】:

            对我有用的是选择“不要编码签名”,然后进行构建。这会产生一个错误,但似乎清除了任何 xcode 挂起的内容。然后选择正确的配置文件并构建。这在过去为我解决了类似的问题。

            【讨论】:

              【解决方案8】:

              我遇到了同样的问题。

              问题的答案很简单。

              您需要登录您的苹果开发者网站 为您的应用申请和下载配置文件。

              双击下载文件后, 您可以在 xcode 中查看项目组织中的文件。

              bundle id 的名称是 com.yourname.appname 之类的类型

              xcode 设备选择 ios 设备 并且目标的codesign应该选择distribution 这是 xcode 中项目组织中的文件之一。

              f.y.i.

              【讨论】:

                【解决方案9】:

                我实际上遇到了这个问题,但是每当我尝试进入管理器时,它都会导致 XCode 崩溃。为了解决这个问题,我进入了我的目标并将代码签名身份下的所有内容更改为 iPhone 开发人员。目标默认为我想要的配置文件,并且可以正常工作。

                【讨论】:

                  【解决方案10】:

                  我改为通过分析并检查该错误来修复我的错误。它表明我的捆绑包 ID 不是配置文件中的小写。

                  【讨论】:

                    【解决方案11】:

                    由组织者修复 -> 团队(选择您的团队)-> 刷新(右下角)。

                    【讨论】:

                    • 也为我工作!
                    • Organizer 是 xcode 右上角的按钮,与运行按钮相对。 Teams 位于顶部的“设备”选项卡下
                    • 通过更改构建设置修复它 -> Bundle Identifier
                    • @Jon 我使用的是 Xcode 7.3.1,找不到任何名为“Organizer”的按钮。它在这个版本中是否改变了位置,或者它看起来如何?它是否打开与转到菜单 Window > Organizer 相同的窗口?
                    【解决方案12】:

                    我遇到了这个问题,并通过将我的方案放回调试而不是发布来解决它。

                    【讨论】:

                      【解决方案13】:

                      我也遇到了这个问题。我终于意识到标识符是区分大小写的。例如,如果您的产品名称是“StackOverflow”,它会自动使用 com.yourcompanyname.StackOverflow 标记标识符。 (这当然可以通过转到目标的摘要来更改)。问题在于开发人员门户中的应用程序 ID 是什么。确保门户中的标识符与 Xcode 中的标识符相匹配。

                      【讨论】:

                      • 我只是想确认应用程序 ID 绝对区分大小写(至少对于 iOS)。我原来的应用程序 ID 是“com.companyName.appName”。将其更改为“com.companyName.AppName”并重新生成证书和配置文件有效。
                      • 该死!就是这样 - 捆绑名称不匹配!非常感谢!
                      【解决方案14】:

                      我通过在项目设置 > 目标 > appName 中更新包标识符来修复它 在信息标签中。

                      【讨论】:

                        【解决方案15】:

                        我直接去了“但似乎在项目设置中,检查 CODE_SIGN_IDENTITIY 下的构建设置,在我的项目中,第一行设置为旧配置文件但在列表中不可见,只有当你打开下拉菜单时, 删除后它起作用了。”

                        这似乎成功了。

                        【讨论】:

                          【解决方案16】:

                          在目标设置中,在 Sumary 中,检查 Bundle Identifier 是否与 itunesconnect.com 中的完全相同

                          例如:

                          捆绑 ID:com.mycompany.myapplication

                          【讨论】:

                            【解决方案17】:

                            我找到了一个不在此处的解决方案,在查看了错误并查看了我的原始 .app 文件后,我找到了解决方案。

                            转到您的目标,然后“构建阶段”而不是构建设置。

                            确保在“编译源代码”中是您的故事板。由于某种原因,当我复制故事板时,Xcode 没有将故事板添加到我文件的这个区域。

                            附:我还必须将项目中我想要的其他 .m 添加到该区域(我拖入的那些,而不是在项目中创建的)

                            希望对你有帮助

                            【讨论】:

                              【解决方案18】:

                              我在尝试构建发布版本时遇到此错误 - 调试构建没有出现问题。令人困惑的是,在构建设置的代码签名部分,我选择了相同的配置文件。

                              我的解决方案是创建并下载一个新的分发配置文件,即使从设置来看它似乎没有被使用。

                              【讨论】:

                                【解决方案19】:

                                自从 Xcode 4.3 安装(从 /Developer 移动到 /Applications)后,我在这里遇到了同样的问题。我发现 this post 用于更改 Xcode 目录

                                在终端检查它设置的路径:

                                /usr/bin/xcode-select -print-path

                                如果它仍然设置为/Developer,则将其设置为/Applications

                                sudo /usr/bin/xcode-select -switch /Applications

                                这对我来说能够更新到 4.3.2 很有用,但这并没有解决提到的问题......所以也许它可以帮助你。

                                【讨论】:

                                • 您的解决方案也可以。我会早点发布我的答案,但所以让我等了 8 个小时来回答我自己的问题......现在我必须等到明天才能接受我的答案。
                                【解决方案20】:

                                几天前我遇到了完全相同的问题。

                                问题与没有正确的分发配置文件有关;我的错误是我在门户中添加了一个新设备,并且没有从开发者网站重新下载分发配置文件。

                                今天我遇到了同样的问题;虽然它与开发人员配置文件完美配合,但我无法存档或构建分发包..

                                我不得不去门户网站并手动重新下载我的分发配置文件,因为添加了新硬件,即使我没有在开发人员配置文件中积极使用它(没有选中框以将其添加到配置中)

                                希望对大家有所帮助

                                【讨论】:

                                • 我认为我的问题很相似。在我的情况下,转到 Organizer -> 选择“Devices” -> 在左侧选择“Library>Provisioning profiles”并单击“refresh”(右下角)就足够了
                                【解决方案21】:

                                经过九个小时的拉头发、诅咒和双手埋头......我所要做的就是创建一个新项目,手动传输文件,错误就消失了。啊。

                                更新:我将自己的答案标记为正确并不意味着这些其他答案是错误的 - 我没有机会尝试其中任何一个。

                                【讨论】:

                                  【解决方案22】:

                                  升级 OS/xcode 后我遇到了同样的问题,所以值得一试。 对我来说解决方案很简单, 转到 ios 配置门户。 确保应用的应用证书有效且未过期。 再次下载它并双击它进行安装。 它应该可以解决问题。

                                  【讨论】:

                                    猜你喜欢
                                    • 2012-04-22
                                    • 1970-01-01
                                    • 1970-01-01
                                    • 1970-01-01
                                    • 2011-06-18
                                    • 2012-08-05
                                    • 1970-01-01
                                    • 2020-01-23
                                    • 1970-01-01
                                    相关资源
                                    最近更新 更多