0

我是 Objective-C 开发的新手。我想创建一个可在 OS X 和 iOS 上使用的应用程序。由于这两个应用程序将共享相同的基础,因此我正在考虑创建一个库,这两个应用程序将使用该库以最大程度地减少代码重复。这两个应用程序将是闭源的,而库将是开源的。

由于我知道 iOS 对动态库的限制,我认为最好的解决方案是创建一个具有两个目标的单个项目:一个框架和一个静态库,如本文所示

一旦我在上面链接的文章的帮助下开始了一些原型,我已经设法找到了许多链接我的库的解决方案,但其中一些似乎很愚蠢,而另一些则出现了问题。

工作区

此解决方案似乎是最简单的解决方案,我只需将应用拖放到工作区中列出的相应目标即可。但是,我在尝试将#import我的库添加到主代码时遇到了一个缺少的自动完成功能,没有建议使用该库。无论如何,我尝试通过自己编写该#import行(Xcode 报告为错误)来编译应用程序,它成功了!编译后,Xcode 正确地向我建议了具有自动完成功能的库……有没有解释?

另外,我对该解决方案还有另一个问题:如果我在发布模式下编译应用程序,它是否也会在发布模式下链接到库,或者我需要为应用程序库指定发布模式?

链接前编译

另一种解决方案是将库编译到 OS X 框架和 iOS 静态库中,将这些二进制文件复制到相应的项目中并链接它们。但我只能考虑缺点,这个选项有什么好处吗?

直接链接来源

AFNetworking一样,我可以直接链接源而不使用库目标生成的二进制文件。

可可豆荚

我听说过这个项目,但我不知道它是否对我有用?

任何帮助选择适当的方式将不胜感激。

4

1 回答 1

-1

'CocoaPods' 运行良好且简单,试试 import <>

于 2013-09-11T12:20:42.570 回答