将文件创建成framework

1.通过Xcode创建一个Cocoa Touch Framework 工程!

2A3596BE-D289-4DA3-8828-7FB45763DD28.png

2.修改项目中编译设置项

1.TARGETS->General Display Name 设置名字
2.TARGETS->Version 设置版本号
3.TARGETS->Deployment Target 设置支持最低的iOS版本
4.TARGETS->Build Setting->Dead Code Stripping 设置为NO
5.TARGETS->Build Setting->Link With Standard Libraries 设置为NO
6.TARGETS->Build Setting->Mach-O Type 设置为 Static Library
7.TARGETS->Build Setting->Architectures 中添加 armv7s
306FC6A9-B447-4155-B4B5-DF4E58A1E515.png

030C501C-95FD-4F76-A7FF-FD17A05571C6.png

3.在工程中添加文件

1BC01C5A-09B8-40A6-B99F-274460BA9AEB.png

4 设置提供外部调用的头文件

(直接将想公开的头文件 从project 拖到 pubic)


D0D2896F-53F2-4AE6-B209-F4E77D298B09.png

5.填写需要公开的文件

5F90E258-DCF1-47C7-83D1-05D96C47B315.png

6.使用模拟器和手机分别连接运行一次 然后将生产的两个版本的framework合成一个!

https://www.jianshu.com/p/583ca50ee5b3

-ObjC:加了这个参数后,链接器就会把静态库中所有类和分类都加载到最后的可执行文件中
-all_load:会让链接器把所有找到的目标文件都加载到可执行文件中,但是在使用这个参数时假如使用了不止一个静态库文件,很有可能会遇到ld: duplicate symbol错误,因为不同的库文件里面可能会有相同的目标文件,建议在遇到-ObjC失效的情况下使用-force_load参数。
-force_load:所做的事情跟-all_load其实是一样的,但是-force_load需要指定要进行全部加载的库文件的路径,这样的话,你就只是完全加载了一个库文件,不影响其余库文件的按需加载

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容