由于权利问题,Mac 应用程序验证失败

Posted

技术标签:

【中文标题】由于权利问题,Mac 应用程序验证失败【英文标题】:Mac app validation fails due to entitlements issue 【发布时间】:2016-05-07 12:30:54 【问题描述】:

我正在尝试在 Mac App Store 之外分发我的 Mac 应用程序版本。我复制了我的目标,使用“开发者 ID”对其进行了签名,删除了 iCloud 功能,创建了一个新的权利文件,我在其中删除了 iCloud 和 APS 权利,并在新目标中引用了它。目标构建和归档都很好,但是当我尝试使用“验证开发人员 ID 签名的应用程序”来验证它时,我遇到了一个错误:

就在验证步骤之前,有这个屏幕:

因此,应用程序包具有正确数量的权利,但“A”文件夹显示不同的数字,并且确实包含 com.apple.developer.aps-environment 权利。这是从哪里来的,为什么它与应用程序指定的权利文件不同,我该如何编辑它?


编辑:在 Xcode 中添加目标的代码签名设置,如果有帮助的话:

【问题讨论】:

【参考方案1】:

您之前是否检查过您的应用程序=使用:

spctl -v -a ./myPath/To/MyApp

-v = 详细程度 和 -a = 评估

这将在将其呈现给 Apple 之前检查几乎所有内容。

除此之外,您是否检查过您的签名设置是否正确?

您能否将设置发布给我们以便我们查看?

干杯,

一个

【讨论】:

spctl 命令有什么作用?当我运行它时,它只显示“..path/Contacts Journal copy.app:accepted override=security disabled” spctl 处理安全评估。如果你掉到终端并弹出man spctl,它会更详细地解释它.. 谢谢,但没有帮助。它只显示消息L“MyApp.app:accepted override=security disabled”。 据我所知,覆盖安全禁用是 Apple 的一个灰色区域。/根据您的确切错误,更多信息会很方便...

以上是关于由于权利问题,Mac 应用程序验证失败的主要内容,如果未能解决你的问题,请参考以下文章

iOS 部署因权利无效而失败 - 但权利有效吗?

应用程序失败的协同设计验证警告

视图状态 MAC 的 Asp.net 验证失败

机器密钥不起作用 - viewstate mac 失败

LTPA 令牌的验证由于到期的令牌而失败,怎么解决这一问题

设置 ViewStateUserKey 给我一个“视图状态 MAC 验证失败”错误