Ada*_*hns 5 xcode ios cocoapods
我正在构建一个闭源动态框架。它依赖于第三方闭源静态框架。
我将静态依赖框架链接到我的框架的项目/目标,如本 Apple 技术说明中所述:
同一篇苹果技术说明中提到:
应用程序目标负责嵌入所有框架,包括其他框架依赖的任何框架。
所以我也给我的客户提供了我所依赖的框架的副本。然而,在同一份技术说明中,Apple(指嵌入静态库/框架)指出:
由于这些情况下的二进制文件是静态库,因此应用程序无法将其嵌入到应用程序包中。
...该库应保留在“将二进制文件与库链接”部分中。
没关系 - 所以我只是让我的客户链接静态框架依赖项而不是嵌入它,一切都工作正常。
-ObjC然而,当我的客户需要他们使用的其他库的链接器标志时,就会出现问题。此链接器标志导致我的(objective-c)静态框架依赖项加载其所有类两次,并且客户端在其控制台中随处可见重复的类日志。
这里一种可能的解决方案是让客户端识别他们使用的需要-ObjC链接器标志的库,并force_load为这些库指定标志。但在客户端使用 CocoaPods 的情况下,此解决方案也会导致问题,因为 CocoaPods 会-ObjC再次覆盖每个链接器标志的任何更改pod install。对于这个问题还有其他解决方案/想法吗?
PS我知道之前的苹果技术说明也提到:
静态框架不是共享静态库的受支持方式。
但不幸的是,我目前受到业务限制的束缚,我必须包含这个静态框架依赖项。
| 归档时间: |
|
| 查看次数: |
775 次 |
| 最近记录: |