上传到iTunes Connect时如何解决“应用程序失败的代码签名验证”?

时间:2010-02-16 12:37:34

标签: xcode iphone-sdk-3.0 xcodebuild provisioning itunesconnect

我遇到了一个问题,我无法通过在不同资源中进行深度搜索来解决这个问题,因为大多数“类似”指出了Icon.png大小的错误等...

我在验证:

之后尝试上传我的应用程序
  • 正确构建并在我的设备上运行
  • 我的证书安装正确
  • 我的证书/个人资料未过期。
  • Icon.png具有57x57 PNG的正确大小和格式。
  • 还有其他一些事情。
  • Ran codesign --verify -vvvv MyApp.app工作正常。
  • 我的ZIP文件已正确完成

当我尝试通过iTunes连接界面上传时,我得到了上面的简单错误,这就是为什么我尝试使用ApplicationLoader,试图找出导致错误的原因,看看控制台。

控制台显示以下内容:

16/02/10 13:25:52   ApplicationLoader[549]  *** Codesign error (please ignore invalid option comments): got requirements(0x800000, 534)
Executable=/var/folders/WZ/WZu24JnOGNe9L79GWq0IlU+++TI/-Tmp-/MyApp.zip/MyApp.app/MyApp
Identifier=com.realtimed.MyApp
Format=bundle with Mach-O thin (armv6)
CodeDirectory v=20100 size=829 flags=0x0(none) hashes=33+5 location=embedded
Signature size=4333
Authority=iPhone Developer: My Name (XXXXXXXXX)
Authority=Apple Worldwide Developer Relations Certification Authority
Authority=Apple Root CA
Signed Time=16/02/2010 13:22:24
Info.plist entries=17
Sealed Resources rules=3 files=28
Internal requirements count=1 size=144

Executable=/var/folders/WZ/WZu24JnOGNe9L79GWq0IlU+++TI/-Tmp-/MyApp.zip/MyApp.app/MyApp
got entitlements(0x800400, 317)
codesign_wrapper-0.7.3: using Apple CA for profile evaluation
codesign_wrapper-0.7.3: Caling codesign with the following args:
codesign_wrapper-0.7.3:    /usr/bin/codesign
codesign_wrapper-0.7.3:    --verify
codesign_wrapper-0.7.3:    -vvvv
codesign_wrapper-0.7.3:    -R=anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.1] exists and certificate leaf[field.1.2.840.113635.100.6.1.4] exists
codesign_wrapper-0.7.3:    --entitlements
codesign_wrapper-0.7.3:    /var/tmp/signingbox/codesign_wrapper_entitlements.plist
codesign_wrapper-0.7.3:    /var/folders/WZ/WZu24JnOGNe9L79GWq0IlU+++TI/-Tmp-/MyApp.zip/MyApp.app
**/var/folders/WZ/WZu24JnOGNe9L79GWq0IlU+++TI/-Tmp-/MyApp.zip/MyApp.app: valid on disk
/var/folders/WZ/WZu24JnOGNe9L79GWq0IlU+++TI/-Tmp-/MyApp.zip/MyApp.app: satisfies its Designated Requirement
test-requirement: failed to satisfy code requirement(s)
codesign_wrapper-0.7.3: failed to execute codesign(1)**

任何有关如何解决问题的帮助/反馈或想法都将受到高度赞赏。

4 个答案:

答案 0 :(得分:42)

深入查看日志文件后,我找到了解决此问题的方法。

虽然我创建了自己的分发配置文件并将CODE SIGNING IDENTITY分配给开发人员证书的正确值,但它无法解决错误:“应用程序验证码验证失败”。

问题出在以下几行:

  

授权= iPhone开发人员:我的名字   (XXXXXXXXX)

尽管在分发配置文件的项目设置中选择了正确的选项,但XCode正在使用开发人员证书对其进行编译。

我终于解决了它:右键点击“目标” - >获取信息 - >并且选择了(不要问我原因)错误的分发证书而不是正确的证书。

我纠正了这一点,最终被接受了。

相关链接(您需要开发者帐户): https://devforums.apple.com/message/147964

答案 1 :(得分:10)

优秀的帖子。我也遇到了这个麻烦,经过多次头痛后发现项目和目标都应该使用正确的代码签名身份进行检查。不知何故,Xcode又回归到开发者配置文件,而不是 Distribution 配置文件。在我故意选择了正确的一个之后,它甚至在构建中就这样做了!

予。为安全起见,请先执行以下操作:

  1. 清理所有版本。
  2. 在finder中删除build文件夹的内容。
  3. 从项目和目标设置中删除现有代码签名身份。
  4. 重启Xcode。
  5. II。然后检查项目以获取正确的配置文件:

    1. 转到Project Settings > Build Tab > Code Signing Identity
    2. 选择适当的分发配置文件
    3. III。现在检查目标:

      1. Target > Get Info > Build Tab > Code Signing Identity
      2. 选择适当的分发配置文件
      3. IV。交叉手指,希望你再也看不到那个小小的黄色三角形。

答案 2 :(得分:5)

Cy采取正确的方法来解决此问题 - 当“应用程序失败的代码签名验证”是构建警告时,在构建日志中展开该项并扫描根本原因失败的签名验证。

在Cy。的原始帖子的情况下,您会看到根问题是“测试要求:未能满足代码要求”,根据我的经验,这是几乎总是由于使用错误的证书进行签名,即iPhone开发者资料而不是iPhone发布。

根本原因并不总是一个明显的解释,但应至少引导您使用其他搜索字词或疑难解答提示。

对于在Xcode存档验证或提交期间遇到“应用程序失败的代码签名验证”的其他人,请查看Product>上的构建日志。通过相同的标题归档构建警告的时间,并针对根本原因进行扩展。然后在以下网址"How do I resolve the error: Application failed codesign verification?"

查看Apple的完整错误原因列表

答案 3 :(得分:1)

检查TARGET(而不仅仅是项目)是否设置了正确的发布代码签名标识