美文网首页
iOS库(三)库嵌套

iOS库(三)库嵌套

作者: fanren | 来源:发表于2023-04-10 11:25 被阅读0次

前言

如果要对一个第三方的SDK做二次封装,并且封装为一个Framework,那这个Framework是该使用静态库呢?还是动态库?
基础的SDK可能是动态库或静态库,二次Framework可能是动态库或静态库,那么共有四种组合:

  • 静态库(基础)、静态库(二次)
  • 静态库(基础)、动态库(二次)
  • 动态库(基础)、静态库(二次)
  • 动态库(基础)、动态库(二次)

一、静态库+静态库

创建静态库First.framework,创建静态库Second.framework,并在Second.framework中引入First.framework

在TestObject工程中,使用静态库Second.framework,需要引入Second.framework而且First.framework必须在工程目录中(可以不引入工程)

使用Second.framework时,First.framework必须在工程目录中(可以不引入),否则会报错

二、静态库+动态库

创建静态库First.framework创建动态库Second.framework,并在Second.framework中引入First.framework

在TestObject工程中,使用动态库Second.framework,只需要引入Second.framework一个就可以了;

三、动态库+静态库

创建动态库First.framework创建静态库Second.framework,并在Second.framework中引入First.framework
在TestObject工程中,使用动态库Second.framework,必须同时引入Second.frameworkFirst.framework
并设置Second.frameworkEmbedDo Not Embed,设置First.frameworkEmbedEmbed & Sign;

image.png

四、动态库+动态库

创建动态库First.framework创建动态库Second.framework,并在Second.framework中引入First.framework

在TestObject工程中,使用动态库Second.framework,必须同时引入Second.frameworkFirst.framework
并把二者的Embed设置为Embed & Sign;

相关文章

网友评论

      本文标题:iOS库(三)库嵌套

      本文链接:https://www.haomeiwen.com/subject/lsdbddtx.html