创建ios静态库需要注意什么?
在开发过程中,我们经常会遇到一些在不同项目中经常用到的部分,所以把这些部分提取出来,做成一个静态库,往往是一个很好的做法。xcode里有制作静态库的模板,网上也有很多相关的制作步骤,但是在实际操作中,还是有很多细节需要注意的。以下是我遇到的一些问题的总结。
1.编译库的发布版本
在“管理方案”中,只需将“构建配置”选项更改为“发布”。如图所示:
2.静态库包含类别。
如果在静态库项目中使用category,可能会遇到链接问题。解决方法是在生成静态库的项目和使用静态库的项目中都使用“-all_load”编译选项,即在对应目标的“构建设置”中的“其他链接器标志”选项中添加“-all_load”。注意:这个编译选项必须添加到使用静态库的项目中!!至于生成静态库的项目,添加与否没有尝试过,但是推荐添加这个编译选项。
3.静态库支持的SDK版本
为了让你的静态库尽可能的支持IOS的系统版本,你要在“IOS部署目标”的选项中选择想要的IOS版本。设置如下图,这是我的静态库项目中的配置,我修改过的选项用红色圈出来。
4.自动复制头文件
在项目对应的目标的“构建阶段”下添加“复制头”选项。默认情况下,此选项不可用。您可以通过单击下面的“添加构建阶段”按钮并选择它来添加它。该选项下有三个子选项,即公共、私人和项目。点击下面的加号,可以将项目中的头文件添加到“项目”中,右键点击对应的头文件,选择“移动到公共组”。将头文件移动到“Pulic”并编译项目后,名为“usr/local/include”的文件夹将出现在。项目编译后定位一个文件,其中头文件是public组中的头文件。此时,只需复制。一个文件和这个路径下的头文件到所需的工程文件。
重印