gpt4 book ai didi

macos - 如何在 iOS 和 OS X 之间创建单一共享框架

转载 作者:行者123 更新时间:2023-12-01 23:27:03 24 4
gpt4 key购买 nike

我正在尝试创建一个框架来保存在 iOS 和 OS X 上运行的应用程序的通用实体类。目前我只是将文件包含在每个目标中,但这需要更改数据模型,以便它从当前目标(因为在 Swift 中,您必须指定模型文件中具有该类的模块)。这当然意味着我有时会忘记并且事情不起作用。

显而易见的解决方案是创建一个保存实体类的共享框架,以便数据模型始终指向同一位置。

问题是似乎没有任何方法可以创建在两个平台上构建的框架。

有人找到了创建可在两个平台上运行的单一框架或库的方法吗?

最佳答案

如果您希望创建单个动态框架二进制文件,可以按照以下步骤操作(如 http://colemancda.github.io/2015/02/11/universal-ios-osx-framework 中所述):

1。更改项目的有效架构和支持的平台。

这应该会改变您的框架和测试单元的有效架构和支持的平台。如果没有,则手动更改它们以从项目的build设置继承。

Step One

  • Base SDK:我推荐 OS X,但它也适用于 iOS。请注意,使用 iOS 作为基础 SDK,“My Mac”目标被分为 3 个不同的目标。

  • 支持的平台:macosx iphoneos iphonesimulator

  • 有效架构:arm64 armv7 armv7s i386 x86_64

2。更改单元测试包的搜索路径

Step Two

  • 运行路径搜索路径:$(继承)@executable_path/Frameworks @loader_path/Frameworks @executable_path/../Frameworks @loader_path/../Frameworks

  • 框架搜索路径:$(SDKROOT) $(inherited)

这是一个比拥有两个单独目标更好的解决方案。

关于macos - 如何在 iOS 和 OS X 之间创建单一共享框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26811170/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com