iOS库(三)库嵌套

2023-04-10  本文已影响0人  fanren

前言

如果要对一个第三方的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;

上一篇 下一篇

猜你喜欢

热点阅读