macOS Catalina 上的应用程序“无法打开,因为无法验证其完整性”

Posted

技术标签:

【中文标题】macOS Catalina 上的应用程序“无法打开,因为无法验证其完整性”【英文标题】:App 'can’t be opened because its integrity cannot be verified' on macOS Catalina 【发布时间】:2019-12-19 08:52:52 【问题描述】:

一些用户报告我的应用程序无法在 macOS Catalina 中打开,并显示错误消息:

无法打开 MyApp,因为无法验证其完整性。

这是因为公证吗?该应用似乎可以在其他 macOS 版本上运行。

【问题讨论】:

【参考方案1】:

是的,确实错误是由于公证。几周前我也收到了这个错误。您需要对您的申请进行公证。

我偶然发现了this awesome article,它解释了如何对应用程序进行公证。步骤太长,无法在此描述。

我还有一个活跃的 GitHub repo here 已经实现了公证,请随时查看。希望这会有所帮助。

【讨论】:

谢谢!上传到应用商店之前我们需要公证应用吗?从我读到的一些文章看来,我们只需要为非应用商店分发进行公证。 我不确定。我正在应用商店之外分发我的应用。 如果应用在应用商店外分发,我们需要公证吗? @Ajey 是的!自 MacOS 10.14.5 起,现在要求对您的应用进行公证。 更新 - 问题是由于我的情况下的代码签名 - 我错过了一些二进制文件的代码签名。【参考方案2】:

这是因为 macOS Catalina 最近发生了变化。

sudo spctl --add "Path_to_flutter/bin/cache/artifacts/libimobiledevice/idevice_id"

您可能需要重新启动系统才能应用更改。

您可以运行a GateKeeper script 来解决此问题。

我有published an article 提供有关如何解决此问题的更多信息。

【讨论】:

【参考方案3】:

alphabeta 版本都安装在设备上时,我遇到了这个问题,需要删除所有这些版本并从头开始安装。

【讨论】:

以上是关于macOS Catalina 上的应用程序“无法打开,因为无法验证其完整性”的主要内容,如果未能解决你的问题,请参考以下文章

macOS Catalina 上的应用程序“无法打开,因为无法验证其完整性”

直观对比:macOS Big Sur较Catalina迎来了多大程度上的UI设计改进?

如果通过双击 JNLP 文件启动 JAVA Web Start 应用程序,如何允许它访问 macOS Catalina 上的文件系统?

macOS Catalina 上的 Node-sass 无法正常工作。我应该如何解决这个问题?

从 macOS Catalina 上的源代码编译 LLVM(如何解决“stdio.h”未找到)

辅助功能检查器无法在 MacOS Catalina 和 Mojave 上的 Xcode 11.x、iOS 13.x 上运行