IOS创建静态库Cocoa Touch Static Library
转自:http://blog.csdn.net/ahopedog/article/details/7873385
为了系统的安全,ios只允许使用静态库(静态连编到程序中),不能用动态库(程序运行时才加载到内存)。
首先创建静态库工程
File -> New -> Project -> Framework & Library -> Cocoa Touch Static Library
实现静态库功能
可以像普通的工程那样开发静态库的功能,比如工具类库的Objective-C类,UIView的派生类等。
编译静态库
对静态库工程编译后,会生成一个.a的文件,有了这个文件就可以在别的工程里调用静态库的功能了。
使用默认的配置编译工程时,.a文件的输出路径是/Users/<USERNAME>/Library/Developer/Xcode/DerivedData/<PROJECT_NAME>/Build/Products
<USERNAME> 当前登陆用户名
<PROJECT_NAME> 工程名和随机数组成的名字,如MyStaticLib-embvqdbqyhdytnetybmkgkarszvx
可以修改编译选项,改变库文件(.a)的默认输出路径。选中工程,打开工程属性窗口Build Settings, Per-configuration Build Products Path就是输出路径。如果修改成Build,库文件就会输出到工程所在目录的Build里。
调用静态库
首先要将静态库文件(.a)和相关的头文件(.h)添加到调用工程里。因为.a文件里是实现代码,所以需要包含功能声明的.h文件。
在调用工程里的任何目录上点右键,选择Add Files to "工程名",加入.a, .h文件。查看工程属性Build Phases -> Link Binary With Libraries, 静态库.a文件已经在列表里了,如果没有可以点加号(+)手动加入。
剩下的代码调用与调用工程里其它.m文件就没什么区别了。