2010-05-21 99 views
31

昨晚,iPhone项目完美地建成了。如何修复iPhone项目的“失败的验证码验证”?

今天早上,我安装了XCode 3.2.3单独的文件夹中。当我在旧的XCode 3.2.2中打开同一个项目并重新构建项目时。我得到了以下警告:

应用程序失败代码标记 验证。签名是 无效,或者未使用 Apple提交证书签名。 (-19011)

我该如何解决?谢谢!

+0

该警告阻止你运行?从提交? – 2010-08-06 23:56:53

+0

由于此警告,我无法运行我的应用程序。 – neoneye 2011-01-10 15:32:33

+0

没有得到几个星期的-19011错误...当我慢慢建立我的应用程序...然后错误开始出现在今天。我没有升级任何东西。安装/删除任何东西。 – Patricia 2011-03-05 22:26:13

回答

6

我有同样的问题,似乎3.2.3与codesigning messes。我通过重新运行3.2.2安装程序来修复它,不需要卸载任何东西。

+0

澄清了一下...是否意味着:1)'3.2.2'安装2)安装'3.2.3' 3)安装'3.2.2'。在那之后,'3.2.2'和'3.2.3'都可以使用? – ohho 2010-05-23 15:13:45

+0

这就是我所建议的,是的。我可以确认能够为App Store进行编码(使用3.2.2的OS 3.0)。 XCode 3.2.3运行良好,但没有测试过建筑/密码。 – 2010-05-24 22:04:47

+0

非常激进,请看下面的解决方案,获得更高的选票。 – chewy 2012-05-18 22:18:11

0

如果您转到组织者并选择供应配置文件,那么列出的配置文件是?如果是这样,你是否检查过它在项目设置/构建/代码签名部分设置?

+1

是的。是。 我还发现这个警告显示在每个旧项目上。在我看来3.1.3一些什么改变了3.1.2环境... – ohho 2010-05-21 08:26:57

9

我也遇到过同样的问题。它显示我在我的钥匙串中有一个重复的证书注册。删除其中的一个(我从系统钥匙串中删除了一个)修复了这个问题。

步骤,帮助我解决我的问题:

  1. 打开钥匙串访问应用程序
  2. 选择“登录”钥匙串,并在底部窗格中“证书”
  3. 开关选择到“系统'钥匙链,看看是否有证书在两条链上注册。
  4. 删除其中的一个,
  5. 重新生成应用程序
+0

我在不同的钥匙链上有几个证书,只剩下一个解决的问题 – RolandasR 2010-10-27 12:21:48

+0

不是我的解决方案。我没有重复,但我确实有相同的症状。 – neoneye 2011-01-10 15:30:16

+0

为我解决了它。显然,如果你的Keychain中还有一个过期的证书,XCode将毫无理由地使用它,而不是更新的未过期证书。 – mrueg 2011-01-26 02:01:57

3

这今天发生在我身上,因为我是移动的现有项目到一个新的Git仓库结构,同时利用通过被添加到获得开发证书我客户的团队作为“会员”。所以很多机会让事情搞砸了。

就我而言,问题原来是“构建产品路径”。我把它设置为相对路径“../../../build”而不是绝对路径。这导致验证工具搞砸了,因为实际路径没有被正确折叠。我将其更改为绝对路径,然后验证工具再次开始成功运行。

我将此作为#8946204的一个bug提交给雷达。

+0

我知道这是一个旧帖子,但@Shaggy Frog的解决方案正是我发现的问题。在我的项目设置的“构建产品路径”中,我有以下值$(PROJECT_DIR)/../ build。我这样做的原因是我不希望生成文件夹与我的项目位于相同的文件夹中(出于源代码控制的原因)。 “../”引起了ohho在原始问题中的代码签名警告。在我从构建路径中删除“../”后,代码签名警告消失了。我的答案:不要在构建路径中使用“../”。 – 2011-04-13 18:20:10

+0

是的,在我的情况下 - 包含..的构建路径是问题。不用说这是令人沮丧的,因为它使得难以在具有不同构建输出的机器之间移动项目。 – 2011-07-10 14:11:31

0

我不确定,但恢复project.pbxproj中的这些更改可挽救我无法在设备中启动我的应用程序。但问题的警告主题依然存在。

@@ -325,6 +325,7 @@ 
           PREBINDING = NO; 
+        "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; 
           SDKROOT = iphoneos; 
@@ -361,6 +362,7 @@ 
           PREBINDING = NO; 
+        "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; 
           SDKROOT = iphoneos; 
3

这是一种旧的文章,但我想和大家分享我所学到的(真的记住,因为我忘了这部分内容。)我试图建立我对AD-飞引人注目的项目。我忘记了我需要创建一个单独的App Store配置文件(配置门户 - >配置 - >分配)。这是我提交的第一个应用程序,文档非常多,所以我错过了/忘记了这部分内容。一旦我创建了App Store配置文件并安装在XCode中,一切正常。只是想把这个扔掉,以防其他人有这个相同的问题。

+0

这是我的问题,我觉得很愚蠢。谢谢;) – Odrakir 2012-01-02 23:37:06

-1

简单解决方案:使用分销证书而不是开发人员证书构建您的应用程序。

+1

这对我有效。 Xcode 4,构建设置,代码签名标识,发布,将证书从开发人员更改为分发,包括目标和项目。请注意,这是在执行项目时,存档(以便将存档提交到appstore)。 – 2011-10-10 21:37:01

5

平行的XCode问题可以使用命令行工具来解决“的xcode-选择”

我发现造成具有安装的XCode 4.2测试类似的问题。其中一个嵌入式权利文件被放置在不同的目录中,导致文件未找到错误。

解决方案是使用xcode-select来验证和修复XCode路径。

+1

谢谢!这个命令为我解决了警告。 XCode 4.0.2在尝试验证代码签名时正在使用beta版本(XCode 4.2)的路径。我用“xcode-select -switch/Developer”设置路径。 – 2011-08-24 09:11:56

+0

我的4.3 sdk和sdk5 beta版都运行良好,但由于某种原因,有一天我无法创建没有此错误的特别版本。 用xcode-select选择4.3 sdk终于在头痛数小时后工作了。非常感谢! – romrom 2011-09-12 09:05:33

+1

它可能值得在这里说4.2写在这个时候不能用于提交应用程序(在我的情况下报告代码签名失败) – 2011-09-15 21:30:46

3

原因是什么浩说,你可以在那里进行更改: 我只是做的是:

  • 打开管理
  • 转到设备
  • 发放模板
  • 单击要配置文件使用。在那里您将看到配置文件标识符键。
  • 打开通过文本文件的Xcode项目(在xcodepj包中的文件)
  • 去那些线条和把钥匙在这里
@@ -325,6 +325,7 @@ 
          PREBINDING = NO; 
+        "PROVISIONING_PROFILE[sdk=iphoneos*]" = "key goes  here"; 
          SDKROOT = iphoneos; 
@@ -361,6 +362,7 @@ 
          PREBINDING = NO; 
+        "PROVISIONING_PROFILE[sdk=iphoneos*]" = "and also here"; 
          SDKROOT = iphoneos; 
  • 保存更改并重新启动项目

!!!这就是我在XCODE 4中的工作!

27

对我来说,下面的步骤解决该问题:

  1. 转至产品>修改方案。

  2. 打开存档配置文件。

  3. 将生成配置设置为分发。

+0

是的!这为我做了。 – DanM 2011-10-03 01:08:16

+0

我也是!救了我! – 2011-10-06 18:05:10

+0

非常感谢洙的工作..! – 2011-10-11 07:12:48

0

我解决了这个问题只需从钥匙串中删除我的分布证书然后从临时轮廓

4

重新下载除了谷歌搜索可能的解决这个问题,并试图出来(希望他们帮助),在这里是一个建议如何诊断是什么原因造成的。以下步骤适用于Xcode 4.2。

  1. 在菜单中,选择查看>导航>显示日志导航器。日志导航器应显示在左侧。
  2. 在构建列表中,选择导致问题的列表。构建日志将显示在主视图中。
  3. 滚动到最下面。最后两步应该是CodeSign验证,其中验证步骤包含警告。
  4. 展开CodeSign并检查用于执行代码签名的参数。
  5. 展开验证了解有关错误/警告的更多信息。

而且向上滚动,并检查了创建目标标题:

构建目标(您的构建目标)

项目(项目)|配置(选定配置)|目的地...

就我而言,我发现在执行存档构建时,应用程序是用开发人员证书签名的。检查构建目标的标题显示发布配置用于构建存档。补救的办法是:

  1. 在菜单中,选择产品>修改方案
  2. 在编辑计划对话框中,选择存档建设项目(左边列表)
  3. 变化构建配置分发

我在复制构建目标后出现此问题。最初的目标是由分销证书签署的。但是,在复制目标时,Xcode决定将发布配置分配给存档构建。

+0

谢谢,这让我意识到,不应该包含发布目标和发布项目的Entitlements.plist文件。将这些字段留空后,codeSign错误消失。 – JeffB6688 2011-12-20 23:40:41