我已经创建了一个大型框架,我打算在我将要创建的几个应用程序中使用它,但是我无法弄清楚如何创建和导入静态库。我一直在关注这个教程,因为它似乎是我能找到的最新版
http://www.icodeblog.com/2011/04/07/creating-static-libraries-for-ios/
教程在创建静态库之后说,并将.a文件与.h文件一起复制到文件夹中;
Now, just drag this folder into the project and Xcode will set up
all of the linking automagically.
但是,当我将该文件夹复制到xCode时,该文件夹为蓝色,我无法导入任何文件
然后我尝试了本教程
http://www.blog.montgomerie.net/easy-xcode-static-library-subprojects-and-submodules
我设法让它像这样导入示例项目
#import <SampleSubproject/SampleSubproject.h>
但是我无法导入库中的任何其他文件。
我一直都在这个时候,我似乎无法找到一个简单的简明教程来解释如何正确地添加静态库,似乎有很多不同的方法。有人可以告诉我最简单的方法。
另外我听说静态库不能在iOS模拟器中编译,这是真的吗?
提前致谢
答案 0 :(得分:1)
Xcode 4不允许你拖动文件夹。它只会失败。您应该首先在Xcode中创建一个Group(Xcode文件夹),然后您可以以这种方式拖放文件。
另一种选择是将文件夹复制到项目根文件夹,然后将文件拖放到Xcode中并创建对文件的引用,而不是让Xcode将它们复制/粘贴到任何地方。
不会为设备或模拟器编译静态库。它们在创建或构建时进行预编译。引用内置于您的项目中,但在编译代码时不会重新构建库。
另外需要考虑的事情是,Xcode 4处理创建静态库的方式大不相同。之前,Xcode 3,一个静态库将被编译成一个大型通用静态库,它可以处理设备和模拟器。现在,该默认操作尚未完成。您仍然可以通过构建脚本来执行此操作,这些脚本将按照需要将它们打包在一起,但这不是默认操作。负责静态库的开发人员必须这样做。因此,如果您从第三方开发人员那里获得源代码,请确保您了解库的构建方式。
答案 1 :(得分:1)
我终于找到了一个网站,通过使用从终端运行的脚本组合这两个库来解释如何为IOS设备和模拟器创建通用库。
希望能帮助其他正在做噩梦的人。令人惊讶的是Apple如何做出一些应该如此简单,非常难以实现的东西!