我分发了一个框架,并且最近添加了需要第三方框架的功能。我希望能够在我自己的框架中嵌入其他框架,但是"伞" Apple不赞成这些框架。
我的用户(开发人员)可以处理我的框架所依赖的依赖关系,并负责在项目中包含其他框架。
但是如果我尝试在没有嵌入其他框架的情况下构建我的框架,它就不会编译,因为我有对模块的代码引用。
我如何解决这个问题?
答案 0 :(得分:1)
我认为这是Frameworks and Weak Linking的完美用例。
具体来说,您可以在目标的Build Phases-> Link Binary With Librares
中将框架链接为可选项
在这里,您基本上将责任委托给客户链接到所需的框架。
在您的代码中,在使用可选框架的任何符号之前,您必须使用if([<Framework> class])
检查框架的存在。
答案 1 :(得分:0)
解决方案是让第三方框架项目成为我的框架项目的依赖子项目。我将利用依赖管理器来实现它,以便我的框架的开发人员用户不必处理下载和集成第三方框架。