iOS将已有项目打包成静态库教程
2019-11-12 本文已影响0人
zhq1992
1.点击项目名->TARGETS,再点击下方"+",添加静态库
![](https://img.haomeiwen.com/i1070332/e45e184f49e0ba7e.png)
![](https://img.haomeiwen.com/i1070332/02ce7d31f3d79965.png)
输入静态库名称,identifier随意,finish
![](https://img.haomeiwen.com/i1070332/fdb691ce545bb7a8.png)
2.设置Build Active Architecture Only参数(可选)
设置为NO的时候,会编译支持的所有的版本
设置为YES的时候,是为Debug的时候速度更快,它只编译当前的architecture 版本
比如为YES的时候,使用某台设备编译出.a,这个.a只能运行在该设备上,我习惯设置为NO
3.设置iOS Deployment Target 和 Targetd Device Family,根据自己项目需求配置
![](https://img.haomeiwen.com/i1070332/06e8933ee14f9a49.png)
![](https://img.haomeiwen.com/i1070332/a1c5907df66e2f62.png)
4.如果主工程使用了pch文件,在静态库项目中也需要配置
![](https://img.haomeiwen.com/i1070332/f7280bf99dee4b32.png)
5.在Podfile文件中加入静态库的target,重新pod install
platform:ios,'10.0'
target 'LoveTrick' do
pod 'MJRefresh'
pod 'MJExtension'
target 'LTSDK' do
end
end
6.选中项目中已有的类的.m文件,勾选上静态库的target
![](https://img.haomeiwen.com/i1070332/9c98008f5db46b45.png)
AppDelegate和pch文件不要勾选,资源文件默认不会打进静态库,需要使用bundle文件包装
7.新建静态库Target之后,默认会生成以静态库命名的.h和.m文件,在.h中可以暴露出方法供sdk调用方使用
![](https://img.haomeiwen.com/i1070332/28d1e141e1f01f61.png)
8.选中静态库的Scheme->Edit Scheme,设置编译选项,可设置编译Debug或者Release版本
![](https://img.haomeiwen.com/i1070332/a793803a73caafdc.png)
9.选中静态库的Scheme,选择设备,command+b 编译出.a文件,即可在其他项目中使用
![](https://img.haomeiwen.com/i1070332/6078442e3b11dfae.png)