升级到 OS X 10.9.5 时 iOS 协同设计验证失败 [英] iOS codesign verification failed while upgrading to OS X 10.9.5

查看:43
本文介绍了升级到 OS X 10.9.5 时 iOS 协同设计验证失败的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

根据我的 Jenkins 构建日志,我确信在我的 OS X 升级到 10.9.5 时会引发以下问题.<代码>+/usr/bin/codesign --verify -vvvv/Users/dobbymini/jenkins/workspace/DobbyBuild/build/Archive.xcarchive/Products/Applications/Dobby.app程序/usr/bin/codesign 返回 1 : [/Users/dobbymini/jenkins/workspace/DobbyBuild/build/Archive.xcarchive/Products/Applications/Dobby.app: 资源信封已过时]代码设计检查失败:/Users/dobbymini/jenkins/workspace/DobbyBuild/build/Archive.xcarchive/Products/Applications/Dobby.app:资源信封已过时

According to my Jenkins building log, I was sure that the following raised while my OS X upgraded to 10.9.5. + /usr/bin/codesign --verify -vvvv /Users/dobbymini/jenkins/workspace/DobbyBuild/build/Archive.xcarchive/Products/Applications/Dobby.app Program /usr/bin/codesign returned 1 : [/Users/dobbymini/jenkins/workspace/DobbyBuild/build/Archive.xcarchive/Products/Applications/Dobby.app: resource envelope is obsolete ] Codesign check fails : /Users/dobbymini/jenkins/workspace/DobbyBuild/build/Archive.xcarchive/Products/Applications/Dobby.app: resource envelope is obsolete

我找到了官方文档OS X Code Signing In Depth 提到它与'version 2 signa'的问题有关

I've found the official document OS X Code Signing In Depth mentioned that it was related to the issue of 'version 2 signa'

注意:在运行 OS X Mavericks 时需要对代码进行签名以获得版本 2 签名.实际的代码签名机制是操作系统的一部分,而不是代码签名工具.无法将 Codesign 工具从 Mavericks 复制到较旧的 OS X 版本.

Note: It is necessary to sign code while running OS X Mavericks to get a version 2 signature. The actual code signing machinery is part of the operating system, not the codesign tool. It will not work to copy the codesign tool from Mavericks to an older OS X version.

显然我的操作系统版本足够高,可以使用版本 2 签名.所以应该有这个文件提到的错误

Apparently my OS version is high enough to have the version 2 signature. so there should be something wrong as mentioned by this document

根据对 OS X 10.9 或更高版本的期望构建您的包:

Structure your bundle according to the expectations for OS X version 10.9 or later:

仅在应包含签名代码的目录中包含签名代码.

Only include signed code in directories that should contain signed code.

仅在应包含资源的目录中包含资源.

Only include resources in directories that should contain resources.

不要使用 --resource-rules 标志或 ResourceRules.plist.它们已过时,将被拒绝.

Do not use the --resource-rules flag or ResourceRules.plist. They have been obsoleted and will be rejected.

问题是,我对上述限制知之甚少.有人愿意帮忙提供一些示例吗?我发现此代码更改后应该用于上面的第 3 项.https://github.com/maciekish/iReSign/commit/37b11a43c50afb8e94ca8b2fda192f23d39e7bf3" rel="nofollow">https://github.com/maciekish/iReSign/commit/37b11a483c50afb8e94ca8b2fda192f23d39b9f9f9b9f9f9d

The question is, I have not much idea about the limitation above. Would anybody kindly help to provide some example? This code changed I found should be for the 3rd item above. https://github.com/maciekish/iReSign/commit/37b11a43c50afb8e94ca8b2fda192f23d39e7bf3

推荐答案

这是 Mac OSX 10.9.5 及更高版本的问题.Apple 将在未来版本中修复此问题.

This is an issue with Mac OSX 10.9.5 and later. Apple will fix this in future release.

请参阅我对 xcodebuild - codesign -vvvv 说" 的评论;资源信封已过时"

这篇关于升级到 OS X 10.9.5 时 iOS 协同设计验证失败的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆