工程现状:
每个功能模块都做成了动态库framework
podfile中 以每个动态库的target的方式把工程是以WorkSpace的方式组织起来
直观看就是在工程最左边窗口出现一堆蓝色工程图标
问题出现了
假如其中一个动态库要依赖一个第三方提供的动态库
- 正确引入方式:在主app内引入这个第三方动态库framework,并且sign & embeded,在自己的动态库中通过add file的方式引入,但是 Do Not Embeded,即不嵌入
- 还有一个方式:就是把自己的动态库都封成私有pod,通过dependency的方式依赖其他第三方动态库
- 不推荐但是也可以用的方式:让第三方提供静态库framework,直接嵌入自己的动态库中
- 尴尬的错误引入方式:直接把第三方动态库framework嵌入(sign & embeded)自己的动态库中,这样运行、打包都没有问题,但是上传AppStore就报错
注意
如果在自己的动态库的代码文件中依然会有找不到第三方动态库 报错提示 xxx.h not found
需要选中动态库对应的蓝色工程图标,到build setting,framework search path中看一下