建议使用.framework,因为.a不能单独用,还要.h;
.framework从本质上讲是个文件夹,里面有存在.a和.h。
-
新建工程, 直接选择.framework静态库;
-
编译时, 设置编译所有架构;
-
默认制作的是动态库, 需要设置链接类型。target -> Build Settings-> 搜索 Mach-o Type ; 改为静态库
-
新建文件,暴露头文件。
-
编译,查看库信息,看有哪些构架
cd进入frameworkLib.framework执行如下操作:lipo -info 库名
编译debug(模拟器、真机),release(模拟器、真机),四个版本,合成。
创建测试工程,测试。
- 如果一开始未设置为静态库,那么默认是动态库,就会报错;
- 动态库的使用方式:
如何检测一个framework库是动态库是还静态库:
执行:file 库路径,如果出现dynamic ,那就是动态库。
动态库使用:
如果没有在Embedded Binaries处添加,会报错:Reason: image not found