1

我正在努力寻找一种解决方案来通过 Apple 对我的应用程序进行公证。我已经通过了完整的过程,我还能够标记我的 DMG,它实际上包含 3 个共享大量通用框架的捆绑包。

在将应用程序下载到新机器上后启动该应用程序时,Gatekeeper 一直说该应用程序来自未知开发人员。经过广泛的研究并通过 system.log ,问题似乎是任何框架或 .dylib 必须在捆绑包中进入 Framework 目录,而在我的场景中,我有一个包含 frameworks 的顶级文件夹,以及所有3 个捆绑包使用 @loader_path 链接到其根目录之外的 1 级框架。

因此,如果我想将应用程序分发到单个 DMG 中并通过将框架复制到每个包中来避免拥有 200+ MB DMG(这也将是一团糟,因为应用程序共享一些常见的配置文件并且整个目录结构将对最终用户来说有些不可压缩),有解决方案吗?

4

1 回答 1

1

好的,从苹果那里得到了一张票,对于我的问题,选择基本上是 2:

1) 复制框架,这仅包括由可执行文件直接链接的框架。在运行时加载的插件或其他东西可以留在另一个位置

2) 在 /Library/Frameworks 中安装共享框架。

没有其他选择,感谢 Apple 我必须工作几个小时才能重做整个事情!

于 2019-09-04T13:07:44.203 回答