生成framework步骤
1.首先新建一个项目,选择Cocoa touch Framework
2.然后将要封装成framework的代码拖入工程
3.选择工程文件>target第一项>Build Setting>
最后将Mach-O Type设为Static Library,framework可以是动态库也可以是静态库,对于系统的framework是动态库,而用户制作的framework只能是静态库
4.然后将需要公开的头文件从Project中拖入Public,至于是否需要将私有的头文件拖入Private,我觉得直接放在Project中即可,若是Private中有头文件,打包以后的framework中会多出一个Private的文件夹包含着放入Private的头文件,不过我觉得如果是私有最好还是不要让别人看到。
5.Build Settings ->Build Active Architecture Only设置为NO. (图中的选项如果设为YES,会导致其编译时只生成当前机器的框架;将其设置为NO后,发现用模拟器编译后生成的framework同时包含x86_64和i386架构。)
6.下面就开始编译了,先选择Generic iOS Device,按下Command+B:Build一下的到的是支持真机的framework,然后随意选择一个模拟器再次Build一下得到支持模拟器的framework
7.然后用命令行将下面两个文件进行合成(也可以单独提供,不合并,合并了会导致包很大,各有优缺点吧,如果framework包不太大建议合并,否则还是提供两个)
如果架构有冲突。可以移除模拟器的一个,例如:lipo NetworkTest -remove arm64 -output NetworkTest