7

我刚刚创建了所有新的开发和部署证书,当我尝试在存档管理器中验证应用程序时遇到了这个奇怪的错误:

error: Codesign check fails : /var/folders/w_/dvqfkh916k12c5hn639qvvqw0000gn/T/oqhxIfU87c/Payload/TestUpload.app: valid on disk
/var/folders/w_/dvqfkh916k12c5hn639qvvqw0000gn/T/oqhxIfU87c/Payload/TestUpload.app: satisfies its Designated Requirement
test-requirement: code failed to satisfy specified code requirement(s)

我已经查看了如何解决这个错误,但似乎对 Xcode 4 没有任何帮助。我已经按照配置文件中的设置进行了操作,但是它似乎没有针对最新的 Xcode 4 软件进行更新(我'在存档管理器设置到位之前,已经让它与以前版本的 Xcode 一起工作)

任何帮助,将不胜感激

4

6 回答 6

1

我正在使用之前认证的旧证书进行测试,它确实运行良好,但使用新的苹果开发帐户创建新证书将无法正常工作。

似乎新证书是通过苹果配置门户的问题创建的。

所以,我猜你的应用程序没有问题,我们只需要等到他们修复错误。

于 2012-01-15T01:33:50.923 回答
1

如果您正在构建依赖项目或库作为归档过程的一部分,请确保这些目标也是使用 App Store 分发证书构建的。

于 2012-08-14T16:47:34.313 回答
0

搜索此 GUI 以寻找“评论”但一无所获 - 如果将其作为答案发布,我们深表歉意。

在过去的 5 个小时里,我遇到了完全相同的错误。谷歌搜索一切。重新创建证书。存档时一切正常,但最后我得到黄色三角形指示错误。使用在 Organizer 中识别为有效的通配符和特定于应用程序的分发配置文件 - 我总是得到错误。你并不孤单,这让我发疯 - 今天应该是我们提交我们去年花费的应用程序的日子......

将密切关注此线程,如果有帮助,也可以从我的角度提供任何进一步的信息。如果您找到解决方案 Paradox,请在此处发帖,因为我束手无策,将不胜感激。

于 2012-01-14T23:28:09.047 回答
0

你确定你是用你的分发资料而不是你的开发者资料签署的吗?如果您尝试共享使用错误类型的配置文件签名的存档代码,我认为 XCode 4.2 会出错。

此线程中的一些(旧)信息:http: //forums.macrumors.com/showthread.php?t=659607

于 2012-01-14T21:10:12.133 回答
0

我有同样的问题。花费数小时重做证书,更换机器,更改 Xcode 版本,进行人们建议的随机更改,重新启动,更改您命名的图标。

在控制台中有大量与验证相关的数据转储,如果你幸运的话,它会在那里说一些有意义的东西,它不适合我。或者至少没有什么我能理解的:/

编辑:控制台输出它运行但略有屠杀的命令。它有一个参数 R= 但输出忽略了参数周围的引号。运行此命令只会输出同样有用的信息:

/var/folders/_x/XXXXXXXX/T/XXXXXXXX/Payload/XXXXXXXX.app: valid on disk
/var/folders/_x/XXXXXXXX/T/XXXXXXXX/Payload/XXXXXXXX.app: satisfies its Designated Requirement
test-requirement: code failed to satisfy specified code requirement(s)
于 2012-01-15T11:14:53.707 回答
0

有效但不匹配的证书

将应用程序提交到 Mac App Store 时可能会发生此错误。发生错误是因为一个或多个代码签名有效但未由 Mac App Store 适当的证书签名:

Invalid Signature - The nested app bundle FRAMEWORK at path APPNAME.app/Contents/Frameworks/FRAMEWORK.framework has following signing error(s): valid on disk /Volumes/data01/app_data/dstr/mz_4939925606610311185dir/mz_6704668226144376567dir/eu.miln.beyond.mas.pkg/Payload/APPNAME.app/Contents/Frameworks/FRAMEWORK.framework/Versions/A: satisfies its Designated Requirement test-requirement: code failed to satisfy specified code requirement(s) . Refer to the Code Signing and Application Sandboxing Guide at http://developer.apple.com/library/mac/#documentation/Security/Conceptual/CodeSigningGuide/AboutCS/AboutCS.html and Technical Note 2206 at https://developer.apple.com/library/mac/technotes/tn2206/_index.html for more information.

解决方案是重新设计应用程序包,确保使用 Mac App Store 应用程序证书。

协同设计

使用codesign -d -vvvv <app.path>来检查签名证书是否正确。

如果您有一个带有混合证书或非 Mac App Store 证书的复杂签名应用程序,您可以使用该codesign标志deep递归地重新签署整个捆绑包:

codesign --force -o library -s '3rd Party Mac Developer Application: Your Organisation (000AAA000A)' --keychain '/absolute/path/to/mac-app-store.keychain' --preserve-metadata=identifier,entitlements,flags --deep '/absolute/path/to/APPLICATION.app'

注意--preserve-metadata=identifier,entitlements,flags选项。这些对于避免覆盖或更改关联的权利和捆绑标识符非常重要。

理想情况下,deep不应使用该标志,但它可用于解决问题。

于 2018-03-16T15:41:29.017 回答