什么是分配dynamic框架的依赖于静态框架的正确方法?

我正在构build一个封闭的源dynamic框架。 它依赖于第三方闭源静态框架。

我将静态依赖框架链接到我的框架的项目/目标,如本Apple技术说明中所述 :

在这里输入图像说明

同样的苹果技术笔记提到:

应用程序目标负责embedded所有的框架,包括其他框架所依赖的任何框架。

所以我也给我的客户一个我依赖的框架的副本。 然而,在同一个技术笔记中,苹果(指embedded静态库/框架)指出:

由于这些情况下的二进制文件是静态库,因此应用程序无法将其embedded到应用程序包中。

…图书馆应保留在“图书馆链接二进制文件”部分。

这很好 – 所以我只是让我的客户端链接静态框架依赖而不是embedded它,一切工作正常。

但是,当我的客户端需要使用其他库的-ObjC链接器标志时,会出现问题。 这个链接器标志会导致我的(objective-c)静态框架依赖性加载其所有类,并且客户端在其控制台中的任何地方都会看到重复的类日志。

一个可能的解决scheme是让客户端识别他们使用的需要-ObjC链接器标志的库,而是为这些库指定force_load标志。 但是这个解决scheme在使用CocoaPods的客户端的情况下也会导致问题,因为CocoaPods会在每个pod install再次使用-ObjC覆盖其链接器标志的任何更改。 有没有任何其他解决scheme/想法任何人有这个问题?

PS我知道以前的苹果技术说明也提到:

静态框架不是共享静态库的支持方式。

但是不幸的是,我的双手暂时受到业务限制,我必须包含这种静态框架依赖。