macOS应用程序捆绑框架目录协同设计

时间:2019-05-03 07:22:20

标签: macos frameworks code-signing osx-gatekeeper

我正在将macOS应用程序打包到一个应用程序捆绑包中。我需要对其进行代码签名并通过公证。是否可以将框架放在“资源”目录中?

我有两个框架。通常,我曾经将此类框架放入包的“ Frameworks”目录中。但是,出于(愚蠢的)设计原因,我需要在框架的同一目录中拥有更多的库。由于将此类库放置在“ Frameworks”目录中会阻止代码签名,因此我想将框架+额外的库移到“ Resources”目录中。

在阅读Apple文档时,似乎框架应该(当然)应该属于“ Frameworks”目录,但是我找不到对不应包含在“ Resources”目录中的内容的任何引用。这是不好的做法吗?我的.app结构不会通过网守吗?

任何建议将不胜感激

1 个答案:

答案 0 :(得分:0)

您现在可能已经尝试在Resources中放置框架。正如您所说,即使今天有效,这也不是一个好主意。

通过使用install_name_toolchange one of the paths built into your frameworks,您也许可以解决导致您想要执行此操作的任何问题。添加符号链接是解决此类问题的另一种便捷方式。这种事情可以在运行脚本构建阶段或构建阶段后期操作中自动完成。