iOS,打Framework静态库
环境:Xcode 7.2
无cocopod版
有cocopod版
无cocopods版
1.新建工程,选择cocoa Touch Framework
2.设置支持版本和设备支持
文章图片
1.png
3.将framework从动态库变更为静态库
文章图片
2.png
4.将自己的文件引入到工程中
5.在Framework生成的.h中#improt 入自己的.h
6.在Build Phases的Header中选择要向外公开的.h(注:public-向外公开的,project:不公开的,private- 一般不用管)
文章图片
3.png
7.设置CPU架构,No为不是当前特定的,通用;Yes-为当前特定的
一般选择No通用
文章图片
4.png
8.在edit schema中选择要打测试还是发布版本
文章图片
5.png
9.然后cmd+B编译程序,此处分别选择真机和模拟器编译
(这里只打了发布版本)
文章图片
6.png
10.检查framework所支持的架构
在framework目录下,执行终端命令
lipo -info
文章图片
7.png
文章图片
8.png
11.合并framework
lipo -create
有cocopods版
【iOS,打Framework静态库】1.正常建立一个工程,cocopod导入第三方,此处以SDWebImage为例
2.在此工程内新建target,选择cocoa Touch Framework
设置时注意区分framework的target和工程项目本身的target
3.设置支持版本和设备(如上第二步)
4.将framework改为静态库(如上第三步)
5.在framework生成的.h引入自己的.h(如上第五步)
6.配置cocopod导入的第三方库路径
选取项目target,在build settings 中找到 Header Search Paths,赋值其中内容,只需赋值public一行即可,至framework的target相同位置
文章图片
9.png
7.配置PODS_ROOT参数
在项目target,build Settings最下方有此参数,将此参数完整复制到framework的target相同位置(此处需自己新建)
文章图片
10.png
8.在build Phases的header内添加向外公开的.h(如上第六步)
...余下步骤如上一样,(注意:cmd+B编译时,target要选择framework的,而不是项目本身的target)
文章图片
11.png PS: 将生成的framework导入其它工程后,正常导入第三方即可使用 ,Other Linker flags:-ObjC 需要加上.
本人惫懒,只因期望对互联网有所贡献而不是单纯的消费者才写这些,核心关键步骤都在,若有不懂的地方可以百度或者评论提出,当然有指教的也请不吝赐教,我尽量回复。
看!灰机~灰机灰过去了~灰机又灰过来了~
推荐阅读
- 遇到一哭二闹三打滚的孩子,怎么办┃山伯教育
- Ⅴ爱阅读,亲子互动——打卡第178天
- 我错了,余生不再打扰
- 2020-04-07vue中Axios的封装和API接口的管理
- 2018-3-24
- 日志打卡
- 以读攻“毒”唤新活动曹彦斌打卡第二天
- 如何在Mac中的文件选择框中打开系统隐藏文件夹
- 爷爷睡了
- iOS中的Block