我创建了一个Cocoa-Touch-Framework(我们将其称为MyFmk),该框架使用第三方框架(称为thirdPartyFmk)作为依赖项。
当前,我正在通过在Xcode的Linked Frameworks and Libraries
部分中添加第三方框架来使用它。它运行良好,并且使用MyFmk的我的应用程序可以正确构建并完成其打算要做的事情。
但是我不想用其中的thirdPartyFmk构建MyFmk。我希望我的应用程序同时包含MyFmk和thirdPartyFmk,因为它们具有依赖性。目前,我无法执行此操作。如何在不将ThirdPartyFmk添加到Linked Frameworks and Libraries
部分的情况下编译MyFmk?
基本上,我想做的是this,如本文的“如何在我的框架中包括第三方库”部分所述
使用谷歌搜索无法产生任何结果,因此我不确定是否已经提出了此要求。
PS:我不希望使用cocoapods构建MyFmk,因为我不希望.m文件可见
答案 0 :(得分:0)
您需要做很多Build Phases
详细工作才能做到这一点。
您的应用程序如下所示:
MyApplication.app
MyFramework.framework
ThirdParty.framework
在MyFramework.framework
中,确保ThirdParty.framework
在Target Dependencies
目标的Build Phase
MyApplication.app
中,并且MyApplication.app
取决于{{1 }}。这将确保在构建时一切都刷新。
在MyFramework.framework
目标中,您需要将MyApplication.app
和MyFramework.framework
都添加到ThirdParty.framework
Copy Frameworks
。
最后,请确保Build Phase
在MyFramework.framework
上的Runtime Search Path
或@executable_path/../Frameworks
上的macOS
上具有正确的@executable_path/Frameworks
iOS
在运行时。