繁体   English   中英

在 Swift IOS 中创建框架文件时如何排除依赖项

[英]How to exclude dependencies when creating framework file in Swift IOS

我正在创建一个快速框架文件,但我陷入了一种情况。 现在我解释一下我的情况。 我有 3 个不同的框架,但现在我需要将它们全部合并,因为所有框架文件的 70% 功能是相同的,所以合并后我很容易管理它们。

Framework One Size is 1MB (Core Feature)
Framework Two Size is 10MB (Core Feature + Additional Feature 01)
Framework Three Size is 35MB (Core Feature + Additional Feature 02)

现在我想合并所有三个框架的代码,但不合并它的依赖项,所以在核心框架文件为 1MB 之后,如果任何用户想要功能 01,他只需添加它的依赖项并且它正在工作。

问题是,如果我在框架中包含依赖项并实现,如果我排除依赖项,框架文件将增加近 45MB,因此框架存档由于缺少依赖项而失败。

有什么办法可以做到这一点?

谢谢

我的建议是看看Firebase如何处理这类事情,因为它是一个很好的例子。

而不是像...这样的模型

Framework One (Core Feature)
Framework Two (Core Feature + Additional Feature 01)
Framework Three (Core Feature + Additional Feature 02)

... Firebase 确保每个模块都是单一用途的,您只需下载项目所需的框架。 首先,Firebase 有一个 FirebaseCore 框架。 这是一个单一的框架,对于所有 Firebase 产品都是必需的。 从那里,您还可以集成其他框架,例如 FirebaseFirestore 或 FirebaseAnalytics。

这些附加框架中的每一个都依赖于FirebaseCore,但它们并未与它捆绑在一起。 您单独下载它们。 所以在你的情况下,我建议:

  • 框架 1(核心框架)
  • 框架 2(独立构建,但依赖于框架 1,但不了解框架 3)
  • 框架 3(独立构建,但依赖于框架 1,但不了解框架 2)

相反,您将 2 或 31 捆绑在一起,您只需确保它们独立工作,只要集成商也集成了 Framework 1。

换句话说,不要一起构建多个框架。 将它们分开。 保持它们模块化。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM