![](/img/trans.png)
[英]Distributing an iOS framework with Swift package management dependencies
[英]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,但它們並未與它捆綁在一起。 您單獨下載它們。 所以在你的情況下,我建議:
相反,您將 2 或 3與1 捆綁在一起,您只需確保它們獨立工作,只要集成商也集成了 Framework 1。
換句話說,不要一起構建多個框架。 將它們分開。 保持它們模塊化。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.