据我所知,iOS动态框架和静态框架的最大区别在于,静态框架在链接时(启动前)静态地链接到代码中,而动态框架在启动/运行时链接。
现在我有一个测试项目:
我的项目已经链接了一个动态框架 - A.framework。
import A.framework
A.framework内嵌了一个框架 - B.framework。
在我的主项目中,我想使用B.framework中的类。
现在我发现,在主项目中通过简单的导入语句:
import B.framework
这实际上是可以的,并且我可以从 A.framework 中嵌入的 B.framework 内部使用代码。
这是怎么做到的呢?它安全可靠吗?主项目如何识别 B.framework?
如果主项目直接将 B.framework 链接到项目中会怎样?在这种情况下,链接时会出现许多“重复符号错误”。
最重要的是,我如何构建 A.framework 而不将 B.framework 嵌入其中,同时当然还要使用其类和函数
任何澄清都将有所帮助 :)