iOS 7.0未找到代码签名身份


124
  • 证书有效
  • Xcode 5
  • IOS 7

代码签名错误:未找到代码签名身份:未找到与您的构建设置中指定的配置文件(“ iOS Team Provisioning Profile:*”)匹配的代码签名身份(即证书和私钥对)。CodeSign错误:SDK'iOS 7.0'中的产品类型'Application'需要代码签名


24
我称这为苹果代码登录梦night,我总是通过删除证书/配置文件重新下载它们,然后映射正确的配置文件来解决此问题。
meda


9
重新启动Xcode有帮助。
罗纳德·兰登2014年

2
重新启动Xcode对我
有用

1
第三次重新启动XCode
Khanh Nguyen

Answers:


68

证书

  1. 吊销以前的证书。
  2. 生成新的开发证书。
  3. 下载证书。
  4. 双击以放入KeyChain。

对于配置文件

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

对于BundleIdentifier。

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

在此处输入图片说明

CodeSigningIdentity。

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

在此处输入图片说明


4
有时重新启动会有所帮助,重新启动Mac后它对我有帮助。
掩盖了

1
您还应该检查是否存在一个分发配给配置文件,其配置文件的应用程序ID与该应用程序的捆绑标识符匹配。一旦找到匹配项,就退出提交对话框,给我该错误。
Chuck Krutsinger 2014年

1
在重新生成证书之前,建议您确保您具有要使用的证书的私钥。
jjramos

为什么我们应该吊销以前的证书的任何特定原因?
iAviatorJose

43

我针对此问题的解决方法是:

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


17

以为我会用自己的亲身经历来补充其他答案。

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

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

尽管已更新了Xcode和iOS开发人员中心上的所有内容。

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

果然,project.pbxproj在文本编辑器中打开Xcode的文件发现了旧的团队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一次自动合并pbxproj文件的问题。我注意到的DevelopmentTeam来自项目设置中“常规”选项卡下的“团队”下拉列表。如果您希望将团队设置为“无”,则完全删除该行对我有用。
JoshA 2015年

我检查了一下,我的DevelopmentTeam是正确的,我如何获得新的一个ID?证书安装中有相同的DevelopmentTeam。请帮助
9to5ios 2015年

奇迹般有效。只需将错误中显示的ID替换为上面的ID。
vanguard69

就我而言,我必须在目标->常规->身份
Ohad Schneider

9

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

  1. 转到XCode首选项,查看Apple ID的详细信息,然后删除抱怨的配置文件。
  2. 转到“钥匙串访问”,然后删除与刚删除的配置文件相关的开发证书。
  3. 在Apple Member Center中,下载刚刚在本地删除的开发配置文件,双击该文件以确保它出现在XCode中。
  4. 下载刚刚在本地删除的开发证书,然后双击以确保它出现在“钥匙串访问”中。
  5. 现在走应该很好。

2
该答案必须在页面上更高。
bkSwifty


7

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

在管理器中查看设备配置文件时,我发现其中一个配置文件无效。然后,我进入了“ 开发人员证书,标识符和配置文件”页面,所有配置文件均处于活动状态,绿色且看起来不错,但是当单击在我的设备上显示为无效的那个配置文件上的“编辑”时,我发现未选中关联帐户中的复选框即使选中了全选。我选中了将个人资料与我的证书相关联的框,下载了个人资料,所有内容都已修复。

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

即使选中了“全选”,您也可能会发现没有关联的证书。 编辑您的个人资料![] [1]


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

4

对我来说,将项目→目标/ [您的项目]→常规→团队设置为“无”即可解决此问题。


4

在经历了一段荒谬的时间来尝试解决其中一个问题之后,我绝对可以看到在某些情况下大多数答案在哪里是正确的,但我的情况并不少见。

我试图部署到应用商店以使用TestFlight进行测试。以前的开发人员(不再是项目或公司的一部分)已经创建了IOS分发证书。xcode试图告诉我的是,证书在会员中心内,但是老兄,您完全不能使用它,因为它不是您的。我没有用它签名所需的私钥,而且刷新,重新启动和吊销也无济于事。您需要开发者和发行证书才能上传到应用商店。

解决方案是使用我的钥匙串发出的新签名请求在会员中心中创建新的生产分销证书。联机创建证书时会很好地记录和描述此过程。完成后,以xcode刷新您的帐户以下载到您的钥匙串,您将变得很黄金。希望对您有所帮助!


2

听起来可能很奇怪,但是对我来说,我重新启动了Mac。希望对别人有帮助


2

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

几个小时后,尝试使用jenkins解决完全相同的问题。
密钥是“安全列表-钥匙串-s <您的钥匙串名称>”

---
长话大讲--- 我在jenkins中使用脚本来覆盖每个项目的设置(供应配置文件和签名身份),
在升级到Xcode 7之后,我必须更改脚本,在“创建-钥匙串”

在此更新了脚本


1

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

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

1

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

如果应用程序在AppStore上发布,则XCode不允许使用相同的包标识符创建应用程序。


1

在Xcode 7上定位iOS 8和9。我的开发配置文件很好,在归档应用程序以上传到应用程序商店时遇到此错误。这是我所做的:

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

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


1

确保您的证书已与您的私钥连接

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

如果证书未使用私钥签名,则将其删除,转到Apple开发人员页面并创建新证书。有时将需要撤销旧的。现在,将使用您的私钥正确签署此新证书。

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

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


1

显然,此问题有不同的原因。:)

就我而言,我的帐户登录已过期...我可以通过以下简单方法解决该问题:

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

希望这可以帮助!



0

在拉了很长时间之后,我终于发现了一个问题。我在创建“ Provisioning Profile”时选择了错误的证书,通过选择正确的证书,这对我有帮助。如果是多个,则必须尝试选择一个接一个地解决这个问题。


0

当我为使用Xcode 7.3,OSX 10.11.4的iOS构建设置新的Jenkins框时,出现了一个模棱两可的错误,“命令/ usr / bin / codesign失败,退出代码为1”。

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

但是,对于jenkins,xcode上可能存在缓存问题。起作用的是:1.退出Xcode GUI。2.重新进入,并手动运行一次构建。3.只有这样,Xcode才会提示允许钥匙串访问授权。4.Jenkins有一些设置可以解决此问题,但是我的机器是安全的,因此我单击“始终允许xcode访问钥匙串”。


0

随着FASTLANE安装,您可以创建和安装一个开发证书

cert --development
sigh --development
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.