仅当 validate built product 设置为 yes 时,应用程序才会通过协同设计验证

Posted

技术标签:

【中文标题】仅当 validate built product 设置为 yes 时,应用程序才会通过协同设计验证【英文标题】:Application failed codesign verification only when validate built product is set to yes 【发布时间】:2011-05-25 18:07:11 【问题描述】:

“应用内购买”问题让我过度分析事物并克服了这个我花了 4 个小时试图解决但无济于事的问题。我将 Xcode 4.0 与 ios 4.3 SDK 一起使用。这里是:

尝试在手机上测试我的应用程序,我使用带有开发证书的配置文件构建它。应用程序在手机上运行良好,我没有收到任何警告。但是,如果我打开“验证内置产品”选项目标构建设置,我得到了这个:

* 警告:默认使用标准的协同设计工具 警告:应用程序未通过协同设计验证。签名无效,或未使用 Apple 提交证书签名。 (-19011)

该应用程序在手机上仍然可以正常运行...

如果我使用带有分发证书的配置文件构建相同的项目,即使“验证构建的产品”已打开,我也不会收到此警告。

我几乎尝试了所有方法,直到它像闪电一样击中我:这个警告是否可能是一个误报,除了明显的“......它没有用 Apple 提交证书签名”之外什么也没说?毕竟,我知道它没有使用提交证书签名,因为我想在我的设备上对其进行测试,如果我使用提交证书,我就无法这样做......

你们可以帮我检查一下你们完美运行的项目吗? (即打开“验证构建的产品”选项,然后使用开发证书构建,看看你是否也收到此警告)

非常感谢!

最好的问候, 弗洛林

【问题讨论】:

【参考方案1】:

更新到 Xcode 4.0 后,我一直在努力解决项目中完全相同的警告。 出于某种原因,在迁移到 Xcode 4 后,我的开发人员配置中的“验证构建产品”设置为“是”。虽然仅在“目标 -> 构建设置”中,而不是在“项目 -> 构建设置”中。将其设置为 NO 可修复相关警告。

为了回答您的问题,这完全有道理,因为用于签署要在您的设备或模拟器上运行的构建的开发者证书不是 Apple 提交证书。

问候

【讨论】:

谢谢你的回答。是的,我想这有点道理,但我当时没有看到......如果你不确定,请注意文档说明目标构建设置始终取代项目构建设置。

以上是关于仅当 validate built product 设置为 yes 时,应用程序才会通过协同设计验证的主要内容,如果未能解决你的问题,请参考以下文章

仅当连接明确时才更新行

RestKit 的词法解析器问题

Angular 2:仅当表单数据有效时才将表单数据从子级传递给父级

如何避免短路评估

MS Access DCount验证

仅当某个状态为真时如何对列进行分组