【问题标题】:Xcode: iPhone app codesign errorXcode:iPhone 应用程序代码设计错误
【发布时间】:2010-09-28 21:22:47
【问题描述】:

在 Xcode 中构建新的 iPhone 应用程序时,我收到此错误:

代码设计错误:代码签名身份 'iphone 开发者' 不匹配任何 您的代码签名证书 钥匙链。一旦添加到钥匙串中, 触摸文件或清理项目以 继续。

解决方法是什么?

【问题讨论】:

标签: iphone ios xcode code-signing xcrun


【解决方案1】:

修复非常简单。在 Build Results 窗口中(您可能通过单击项目窗口右下角的错误图标进入),将下拉菜单从“Device - iPhone xxx”更改为“Simulator - iPhone xxx”。


(来源:kickasslabs.com

【讨论】:

  • 回答我自己的问题,因为我认为这会对其他人有所帮助。
  • 感谢 Gabe,升级到 SDK 3.0 后我遇到了同样的错误,并且花了太多时间尝试修复它
  • 非常感谢...这让我免于沮丧。刚刚学习了我花了几个小时尝试编译我的代码的全部内容......
  • 还在帮我!非常感谢!
【解决方案2】:

当我不小心修改了目标而不是项目级别的代码签名身份构建设置时,我收到了这个错误。确保您在项目级别输入了正确的信息(获取有关项目的信息,而不是目标。)如果您更改了目标构建设置,请尝试从那里删除这些值。然后目标将继承项目的设置。

我还会执行“全部清除”,然后退出 xcode,从构建文件夹中删除所有内容并尝试进行另一个构建。 (这是一个 Xcode 巫毒技巧,似乎可以解决许多代码签名问题。)

【讨论】:

  • 我也遇到了这个错误,并且错误地选择了目标而不是项目。选择项目并在那里更新签名证书解决了问题。
  • 我做了相反的事情:不断更改项目设置并清除所有结果,但没有结果。然后我编辑了活动目标,设置了分发配置文件的正确代码签名身份(从发布配置文件复制)。那成功了。谢谢@lajos!
【解决方案3】:

您需要加入 99 美元的开发者计划才能在实际手机上进行测试。一旦您被接受加入该计划,Apple 应该知道如何签署您的代码。

【讨论】:

  • 每年 99 美元,而不仅仅是 99 美元 :)
【解决方案4】:

不需要巫毒教。有时某些应用程序会更改默认钥匙串,Xcode 会停止查找 iPhone 开发人员密钥。解决方案很简单(对我有用):

  1. 列表项启动钥匙串访问应用程序
  2. Ctrl+单击存储开发密钥的钥匙串并选择将钥匙串设为默认
  3. 享受开发出色的 iPhone 应用程序的乐趣。

【讨论】:

    【解决方案5】:

    我遇到了同样的问题。在这里找到修复:

    iphone sdk tools utilities

    在 Keychain Access.app 中,我的开发者证书将显示为“此证书由未知机构签署”。原因是我没有 ADC 中间证书(您可以从“证书”选项卡中的“配置程序”下载。 一旦我安装了这个,开发者证书就会正确显示在钥匙串中,我的代码可以部署在该死的手机上。

    【讨论】:

      【解决方案6】:

      我刚刚解决了我的代码签名问题。什么样的恶梦!两天超过8小时的挫折。我尝试了新应用程序、新应用程序名称、新证书、删除配置文件等。基本上我的钥匙串中有两个“iPhone 分发”证书,导致所有代码签名失败。但是一个被隐藏了!可见证书在我的登录钥匙串中。隐形证书在我的系统钥匙串中。请注意,将您的证书添加到任一钥匙串,但不能同时添加!我从系统钥匙串中删除了证书,它变成了一个幽灵证书。它不再出现在系统钥匙串“钥匙串访问”工具中,但它确实存在于实际的系统钥匙串文件中,因此实际上它没有被删除。我在钥匙串文件中找到了 Distribution 这个词,它就在那里!我的解决方案是从修复代码签名的钥匙串文件中删除包含 iPhone Distribution 的那一行。结果是我的系统钥匙串坏了。但我可以再次签署应用程序\m/

      【讨论】:

        【解决方案7】:

        这听起来可能很有趣,但我到处寻找解决方案。最终我发现在左上角的 Xcode 中,您选择设备和版本的下拉列表中,我在下拉列表中选择了“调试”而不是发布。一旦我选择了发布,问题就解决了。

        【讨论】:

          【解决方案8】:

          当您从其他人那里收到 Xcode 项目时,就会发生这种情况。

          这是我为解决问题所做的。

          1. 在钥匙链访问中注册您的钥匙。您可以在 iOS 配置中下载您的密钥 门户网站。 (应用程序 -> 实用程序 -> 钥匙串访问)
          2. 为应用安装配置文件。
          3. 在项目配置中更改 iPhone 开发人员。 (Target Info -> Build tap -> Code Signing -> Code Signing Identity and Any iOS)

          【讨论】:

          • “构建水龙头”是什么意思?
          • 我的意思是一个名为 Build in Target Info 窗口的点击。
          【解决方案9】:

          当上述方法都没有帮助我时,我不小心移除了带有电子签名证书的读卡器,现在我的应用程序构建没有错误。如果您有这样的证书,请尝试拔下它。

          【讨论】:

            【解决方案10】:

            我刚刚解决了我的问题:

            • 在 Project Navigator 中单击您的主项目文件夹
            • 在右侧窗口中,选择您的目标
            • 在“代码签名”下,将代码签名身份从原来的任何内容更改为您的身份
            • 为您的 iPhone/iPad 设置活动方案(在左上角,除了“运行”按钮之外)

            希望这对那里的人有所帮助!

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2017-07-25
              • 1970-01-01
              • 2014-12-09
              • 2015-03-20
              • 1970-01-01
              相关资源
              最近更新 更多