一、生成静态库
1.打开 Xcode 创建一个新的 Static Library 工程,取名applestudio
2.创建工程完毕后,简化目录结构
删除系统自动创建的同名类:applestudio.h和applestudio.m
把自己的代码复制进去,如例子:guiconnect.h 和 guiconnect.m
3.设置适配所有模拟器架构:
project -> buildSeting -> Build Active Architecture Only 设为 NO
4.提供的静态库为release版本的:
Edit Scheme->Run->Release/Debug分别进行编译
5.Command + B 运行工程进行编译打包,发现没有生成.a文件
解决:
设置生成路径:
项目 - TARGETS - 点击+号 - Add User-Defined Setting;
添加 CONFIGURATION_BUILD_DIR 然后在Value中设置好想要导出的路径地址;
如下:
6.重新Command + B 运行工程进行编译打包完成后,设置的路径下生成了.a文件和include文件夹
二、对静态库的使用
1.创建一个iOS项目,把生成的.a文件和include文件夹拖拽到项目根目录下,拖拽之前先把路径简化下,include文件夹下放.h文件和.a文件,如:
其中:.h的路径可以在编译前设置:
注:拖拽时勾选上如下:
2. 验证代码:
3.静态库程序调试:
创建一个iOS项目,然后点击加号创建一个静态库
还可以打断点调试
三、对生成的.a库cpu架构的验证和合成
1.终端查看静态库所支持的架构:终端 -> cd 进入库文件路径 -> lipo -info 库名
可以看到静态库只支持 arm64 x86_64
2.如果要同时支持模拟器和真机,请使用命令合成 .a 静态库:
lipo -create [name1.a 所在路径] [name2.a 所在路径] -output [newname.a]