ios - Cocoapods - 仅在使用 FirebaseCore 时安装 FirebaseAnalytics

标签 ios firebase cocoapods firebase-analytics

所以,这个问题不是关于如何修复某些东西,而是关于它是如何以这种方式工作的。

我想在我的应用中使用 FirebaseMessage 来推送通知,它依赖于 FirebaseCore。我开始只是将 FirebaseMessage 添加到我的 Podfile

pod 'Firebase/Messaging'

我安装了:

Installing Firebase (5.4.1)
Installing FirebaseCore (5.0.6)
Installing FirebaseInstanceID (3.1.1)
Installing FirebaseMessaging (3.0.3)
Installing GoogleToolboxForMac (2.1.4)
Installing Protobuf (3.6.0)

好的,这里的问题是我在构建项目时收到警告,因为缺少 FirebaseAnalytics。没问题,我可以添加:

pod 'Firebase/Messaging'
pod 'Firebase/Core'

并得到:

Installing Firebase (5.4.1)
Installing FirebaseAnalytics (5.0.1)
Installing FirebaseCore (5.0.6)
Installing FirebaseInstanceID (3.1.1)
Installing FirebaseMessaging (3.0.3)
Installing GoogleToolboxForMac (2.1.4)
Installing Protobuf (3.6.0)
Installing nanopb (0.3.8)

...我得到了额外的 nanopbFirebaseAnalytics

为什么会这样?查看 podspecs,FirebaseCore 没有与 FirebaseAnalytics 相关的依赖项: https://github.com/CocoaPods/Specs/blob/master/Specs/8/b/d/FirebaseCore/5.0.6/FirebaseCore.podspec.json

我想知道是什么告诉 cocoapods 安装 FirebaseAnalytics pod,以及为什么它在我专门安装 FirebaseCore 时发生。

最佳答案

Firebase/Core 是 Firebase pod 的 Core 子规范。请参阅 Firebase podspec 中的详细信息.

虽然 FirebaseCore pod 不依赖于 FirebaseAnalytics,但 Firebase pod 的核心子规范却依赖。

不幸的是,“核心”在 Firebase 术语中重载了,但在不破坏大量应用程序的情况下改变这一点是很棘手的。

关于ios - Cocoapods - 仅在使用 FirebaseCore 时安装 FirebaseAnalytics,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52943029/

相关文章:

ruby - Cocoapods 安装错误 mkmf.rb 找不到 ruby​​ 的头文件

ios - 在 cocoapods Podspec 中定义自定义模块映射文件

ios - 无法子类化 UILabel : Unrecognized selector sent to UILabel

iphone - 如何以编程方式使 UIToolbar 覆盖?

java - 如何从 Firebase 存储中检索图像的下载 URL?

java - Firebase 数据库规则 parent 跟踪 child

node.js - 用户在 Firebase/Node.js 中全局登录

ios - 在 OpenGL ES 中绑定(bind)多个缓冲区

objective-c - 尝试通过图像选择器从照片库中获取照片时应用程序崩溃

iphone - 如何手动发送 UIKeyboard 通知