swift打包动态/静态库,包括依赖第三方框架

swift打包库踩坑

1、新建动态包项目

1

2、配置支持版本,配置打包库的类型(此出我们选择动态库,关于这几种库的异同请百度)

2

3、添加测试文件,注意swift包,如果想被外部访问,需要用public或open描述,且用@objc描述(以前是不需要的)

3

4、导入第三方库,此处以SDWebImage为例.打包库里不能使用cocoapod的方式导入三方库,所以我去github下载了包,自己生成了iOS真机模拟器通用包(具体github有教程),导入第三方库后在头文件import

4

5、使用三方框架

5

6、添加需要支持的指令集(模拟器32位处理器测试需要i386架构,模拟器64位处理器测试需要x86_64架构,真机32位处理器需要armv7,或者armv7s架构,真机64位处理器需要arm64架构。arm64e架构用于A12芯片组,该芯片组在最新的2018 iPhone型号(XS / XS Max / XR)中添加)

6

7、设置打包环境,选择release或者debug

7-1


7-2

8、编译生成动态库

8-1


8-2

9、使用lipo -create -output命令生成真机模拟器通用包

9

10、使用最终生成的framework,导入生成的动态库,导入依赖的sdwebimage库,设置embed & sign

10-1

导入使用报错,找不到x86_64对应的模拟器指令集文件

10-2

我们cd到刚才生成的动态包目录,查看包支持的指令集(lipo -info),显示是有是有x86_64的

10-3

最后找到原因,

10-4

最后得到

10-5

11、重新导入生成的framework,成功编译使用,真机模拟器都可以使用

11
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容