1

背景故事:当我有一个依赖于外部库的应用程序时,我的 pod 都可以正常工作,但是在添加共享扩展后我遇到了问题。

为了在应用程序和扩展程序之间共享我的依赖项和核心代码,我将核心代码提取到一个单独的 Cocoa Touch 框架中。但是,我现在遇到了我的 pod 依赖项的问题。

在此处输入图像描述


通过反复试验,我遇到了各种问题:

  1. Pod 安装错误:[!] 'XXX' 目标具有名称冲突的框架:alamofire、gtmsessionfetcher、googletoolboxformac、kingfisher、mixpanel、protobuf、realm、realmswift、result、rxcocoa、rxswift、swiftyjson 和 nanopb。
  2. 没有这样的模块错误:Pods 安装成功,但我在应用程序扩展中收到外部 pod 依赖项的错误
  3. 崩溃:一切看起来都已安装,但在运行时,由于安装了多个版本的依赖项以及应用程序在版本之间切换,我遇到了崩溃。

我应该如何将我的 Podfile 构建为:

  • 在 Core、App 和 Extension 目标之间共享一些 pod(例如 RxSwift/RxCocoa)
  • 仅在核心目标中保留一些 pod(例如 Alamofire)
  • 仅在 App + Extension 目标中保留一些 pod(例如 Mixpanel-swift)

当前 Podfile 尝试https ://gist.github.com/yahmad/ccc3cd0d882dabd3c76622e45cfe90eb

4

0 回答 0