【问题标题】:iOS 7.0 No code signing identities foundiOS 7.0 未找到代码签名身份
【发布时间】:2013-10-12 09:54:03
【问题描述】:
  • 证书有效
  • xcode 5
  • iOS 7

代码签名错误:未找到代码签名身份:没有代码签名 匹配的身份(即证书和私钥对) 在构建设置中指定的配置文件(“iOS Team 配置文件:*”)被发现。 CodeSign 错误:代码签名是 SDK“iOS 7.0”中的产品类型“应用程序”需要

【问题讨论】:

  • 我称之为苹果代码登录的噩梦,我总是通过删除我的证书/配置文件重新下载它们,然后映射正确的配置文件来解决这个问题。
  • 重启 Xcode 有帮助。
  • 重启 Xcode 对我有用 :)
  • 第三次重启XCode

标签: ios ios7 code-signing


【解决方案1】:

对于证书

  1. 撤销以前的证书。
  2. 生成新的开发证书。
  3. 下载证书。
  4. 双击放入钥匙串。

用于配置文件

  1. 创建新的或编辑现有的配置文件。
  2. 下载并安装。

对于 BundleIdentifier。

  1. com.yourcompanyName.Something(与 AppId 相同)

CodeSigningIdentity.

  1. 选择您创建的 Provisioning 配置文件。

【讨论】:

  • 有时重启有帮助,它在我的 Mac 重启后帮助了我。
  • 您还应该检查是否存在应用 ID 与应用的捆绑标识符匹配的分发配置文件。一旦我得到匹配,提交对话框就会退出,给我那个错误。
  • 在重新生成证书之前,我建议确保您拥有您尝试使用的证书的私钥。
  • 我们应该撤销以前的证书的任何具体原因??
【解决方案2】:

您不必删除所有配置文件来解决此问题,

在管理器中查看我的设备配置文件时,我发现其中一个配置文件无效。 然后我去了Developer Certificates, Identifiers & Profiles page,所有配置文件都处于活动状态,绿色并且看起来不错,但是当在我的设备上显示为无效的配置文件上单击编辑时,我看到关联帐户中的复选框未选中,即使全选被检查了。我选中了将配置文件与我的证书相关联的框,下载了配置文件,一切都已修复。

在您的个人资料网页上单击“编辑”

即使选中“全选”,您也可能会看到没有关联的证书。

【讨论】:

  • 我正要删除我所有的配置文件并从草图开始,然后我遇到了你的回答。完美的伙伴。由于这个问题浪费了一整天。非常感谢你分享你的答案。
【解决方案3】:

这听起来可能很奇怪,但对我来说重新启动我的 mac ..我无法解释为什么以及发生了什么,但它现在可以工作了。希望它会帮助某人

【讨论】:

    【解决方案4】:

    我想我会用我自己的个人经验来补充其他答案。

    最近我遇到了一个问题,即构建两个目标,两个目标失败并出现以下错误:

    代码签名错误:未找到代码签名身份:没有有效签名 与团队匹配的身份(即证书和私钥对) 找到了 ID“XXXXXXXXXX”。 CodeSign 错误:需要代码签名 SDK“iOS 7.1”中的产品类型“应用程序”

    尽管更新了 Xcode 和 iOS Developer Center 中的所有内容。

    提示是构建失败消息中显示的团队 ID 已过期。

    果然,在文本编辑器中打开Xcode的project.pbxproj文件发现了旧的团队id:

    D29A93A318AB96440099C177 = {
            DevelopmentTeam = XXXXXXXXXX;
    };
    

    顺便说一句,要获取您的 project.pbxproj 文件,请选择您的 .xcodeproj 文件并显示如下所示的内容:

    搜索目标 ID D29A93A318AB96440099C177,我可以看到它与失败的目标之一匹配:

    targets = (
        F5E8B19A16E64505006F22D4 /* MyTarget1 */,
        93DB2342183F737100BEA69F /* MyTarget2 */,
        D29A93A318AB96440099C177 /* MyTarget3 */,
        D200F4B518AB968A00F58C21 /* MyTarget4 */,
        F5E8B1C016E64505006F22D4 /* MyTarget5 */,
        589FB35119114DED003D9350 /* MyTarget6 */,
    );
    

    在这种情况下,MyTarget3。为了解决这个问题,一个简单的文本搜索将旧的团队 ID 替换为新的正确 ID。问题解决了。

    总结一下,希望您的情况能够通过上述答案得到解决,而不是深入研究 Xcode 项目文件的复杂性。但是,如果没有,并且错误显示无效的团队 ID,那么值得检查该团队 ID 是否仍然存在。

    【讨论】:

    • 这也是我的问题。不确定是因为我还是我的分布式团队中的某个人拥有自己的个人资料、证书等。我把它放在 git auto 上一次很糟糕地合并了 pbxproj 文件。我注意到的 DevelopmentTeam 来自项目设置中 General 选项卡下的 Team 下拉菜单。如果您希望将团队设置为无,则完全删除该行对我有用。
    • 我已经检查过了,我的 DevelopmentTeam 是正确的,我如何获得新的 ID?证书安装具有相同的 DevelopmentTeam。请帮忙
    • 像魅力一样工作。只需将错误中显示的 ID 替换为上面的 ID。
    • 在我的情况下,我必须单击 Target -> General -> Identity 中的“修复”按钮
    【解决方案5】:

    您无需删除所有配置文件。我遇到了同样的问题并通过安装缺少的证书来修复它。您可能忘记为用于代码签名的配置文件安装所需的证书。

    • 确保您已将所需的证书(开发/分发)安装到代码签名配置文件(开发/分发)的钥匙串中。

    【讨论】:

      【解决方案6】:

      我对这个问题的解决方法是:

      Xcode > 首选项。在帐户中单击您的 Apple ID。单击查看详细信息,单击您的项目 Provisioning Profile(我认为这会有所帮助),然后单击左下方的刷新按钮。

      【讨论】:

        【解决方案7】:

        我刚遇到 Jenkins 的这个问题。

        解决方案是复制证书并将其粘贴到系统钥匙串中,否则 Jenkins 无法读取证书。

        【讨论】:

          【解决方案8】:

          对我来说,将 Project → Targets/[Your project] → General → Team 设置为“None”解决了这个问题。

          【讨论】:

            【解决方案9】:

            在尝试解决其中一个问题时花了很多时间,而且我绝对可以看到在某些情况下这些答案中的大多数可能是正确的,我的情况并不少见。

            我试图部署到应用商店以使用 TestFlight 进行测试。以前的开发人员(不再是项目或公司的一部分)创建了 IOS 分发证书。 xcode 试图告诉我的是,是的,证书在会员中心,但是伙计,你完全不能使用它,因为它不是你的。我没有用它签名所需的私钥,也没有再多的刷新、重启、撤销对我有帮助。您需要开发者和分发证书才能上传到应用商店。

            解决方案是使用来自我的钥匙串的新签名请求在会员中心创建新的生产分发证书。在您在线创建证书时,此过程已得到很好的记录和描述。完成后,在 xcode 中刷新您的帐户以下载到您的钥匙串,您将获得金牌。我希望这对某人有帮助!

            【讨论】:

              【解决方案10】:

              尝试更改包标识符:项目 -> 目标/[您的项目] -> 常规 -> 包标识符

              如果应用是在 AppStore 发布的,XCode 不允许创建具有相同包标识符的应用。

              【讨论】:

                【解决方案11】:

                我在开发中遇到了完全相同的问题。我通过

                解决了
                1. 转到 XCode 首选项,查看 Apple ID 的详细信息,然后删除抱怨的配置文件。
                2. 进入 Keychain Access,删除与刚刚删除的配置文件相关的开发证书。
                3. 在 Apple 会员中心,下载您刚刚在本地删除的开发配置文件,双击该文件以确保它出现在 XCode 中。
                4. 将刚刚删除的开发证书下载到本地,双击确保出现在Keychain Access中。
                5. 现在应该可以走了。

                【讨论】:

                • 这个答案需要在页面上更高。
                【解决方案12】:

                在 Xcode 7 上以 iOS 8 和 9 为目标。我的开发配置文件很好,但在归档应用以上传到应用商店时出现此错误。这是我所做的:

                Xcode > 首选项 > 帐户 > 查看详细信息。在 iOS Distribution 旁边,单击“重置”按钮。这将使您正在使用的分发配置文件失效(因为您重置了分发证书),因此请编辑配置文件以包含新重置的证书。

                确保同时下载新的分发证书和新编辑的分发配置文件。重启 Xcode。

                【讨论】:

                  【解决方案13】:

                  当我使用纯命令行/jenkins 构建脚本并且我不想为集成环境手动设置任何单个 UI/RDP 时,我到达了这个线程。

                  几个小时后,尝试使用 jenkins 解决完全相同的问题。
                  关键是“安全列表-钥匙串-s

                  --- 长篇大论 ---
                  我在 jenkins 中使用脚本来覆盖每个项目的设置(配置文件和签名身份)
                  升级到 Xcode 7 后,我必须在“create-keychains”之后更改“list-keychains”上方的脚本添加

                  Updated script here.

                  【讨论】:

                    【解决方案14】:

                    转到问题导航器并检查您的钥匙串访问中是否存在Signing Identity:。如果没有,请下载.cer 文件并将其附加到钥匙串中。

                    【讨论】:

                      【解决方案15】:

                      拉了很长时间后,我终于发现了一个问题。我在创建配置文件时选择了错误的证书,通过选择正确的一个,它对我有帮助。在你的情况下,如果它是多个,那么你必须尝试一一选择以解决此问题。

                      【讨论】:

                        【解决方案16】:

                        确保您的证书与您的私钥相关联

                        打开钥匙串访问、登录、证书。在列表中找到证书,看看它是否与您的私钥正确配对。

                        如果证书未使用私钥签名,请将其删除,进入苹果开发者页面并创建新证书。有时需要撤销旧的。此新证书现在将使用您的私钥正确签名。

                        现在,当您拥有新证书时,重新创建所需的配置文件,将在创建过程中包含新证书。

                        请注意,当您团队中的某个人使用他的私钥重置此证书时,在刷新过程中可能会再次出现同样的问题。我不确定,但似乎团队中的每个开发人员都必须拥有自己的分发证书。

                        【讨论】:

                          【解决方案17】:

                          当我使用 Xcode 7.3、OSX 10.11.4 为 iOS 构建设置新的 Jenkins 框时,我遇到了这个模棱两可的错误,“Command /usr/bin/codesign failed with exit code 1”。

                          就我而言,我做对了几件事: 1.是的,我已将我的证书添加到钥匙串中,包括 Apple 的根证书和团队的证书。 2.是的,我通过 xcode 首选项下载了正确的配置文件。 3.是的,它甚至在 xcode 中手动构建。

                          但是,对于 jenkins,xcode 上可能存在缓存问题。起作用的是: 1.退出 Xcode GUI。 2.重新进入,手动运行一次构建。 3.Xcode才会提示允许keychain访问授权。 4.Jenkins有一些设置可能可以解决这个问题,但是我的机器是安全的,所以我点击'always allow xcode to access the keychain'。

                          【讨论】:

                            【解决方案18】:

                            安装fastlane后,您可以通过

                            创建和安装开发证书
                            cert --development
                            sigh --development
                            

                            【讨论】:

                              【解决方案19】:

                              显然这个问题有不同的原因。 :)

                              对于我的情况,我的帐户登录已过期...我通过简单的方式解决了它:

                              XCode -> 首选项 -> 帐户 -> Apple ID -> 选择相关ID,重新登录...

                              希望这会有所帮助!

                              【讨论】:

                                猜你喜欢
                                • 1970-01-01
                                • 2014-08-08
                                • 1970-01-01
                                • 2015-08-31
                                • 2016-01-28
                                • 1970-01-01
                                • 1970-01-01
                                • 1970-01-01
                                • 1970-01-01
                                相关资源
                                最近更新 更多