firebase pod 安装的版本低于存在的最新版本

Posted

技术标签:

【中文标题】firebase pod 安装的版本低于存在的最新版本【英文标题】:firebase pod was installed less version than the latest version exists 【发布时间】:2017-09-01 14:06:58 【问题描述】:

我尝试安装最新版本的 Firebase pod。我知道这个pod的最新版本是4.1.1来自cocoa pods官网https://cocoapods.org/pods/Firebase

但是当我从 ios 终端调用 pod update 命令时,我看到这个 pod 安装为 3.17.0。

这是我在执行 pod update 命令后在 iOS 终端中看到的内容:

Downloading dependencies
Using Alamofire (4.5.0)
Using Bolts (1.8.4)
Using Crashlytics (3.8.5)
Using Digits (3.0.2)
Using FBSDKCoreKit (4.26.0)
Using FBSDKLoginKit (4.26.0)
Using FBSDKMessengerShareKit (1.3.2)
Using FBSDKShareKit (4.26.0)
Using Fabric (1.6.12)
Using Firebase (3.17.0)
Using FirebaseAnalytics (3.9.0)
Using FirebaseAuth (3.1.1)
Using FirebaseCore (3.6.0)
Using FirebaseCrash (1.1.6)
Using FirebaseDatabase (3.1.2)
Using FirebaseDynamicLinks (1.4.0)
Using FirebaseInstanceID (1.0.10)
Using FirebaseInvites (1.3.0)
Using FirebaseMessaging (1.2.3)
Using FirebaseStorage (1.1.0)
Using FirebaseUI (4.1.1)
Using GTMOAuth2 (1.1.4)
Using GTMSessionFetcher (1.1.11)
Using Google (3.1.0)
Using GoogleAPIClientForREST (1.3.0)
Using GoogleSignIn (4.0.2)
Using GoogleToolboxForMac (2.1.1)
Using IQKeyboardManagerSwift (4.0.13)
Using MBProgressHUD (1.0.0)
Using Protobuf (3.4.0)
Using SwiftyStoreKit (0.10.7)
Using TwitterCore (3.0.0)
Using TwitterKit (3.1.0)
Generating Pods project
Integrating client project
Sending stats
Pod installation complete! There are 23 dependencies from the Podfile and 33 total pods installed.

这是我在项目中的 Podfile 的内容:

use_frameworks!

target 'PrayerDeck' do
pod 'Firebase'
pod 'Firebase/Auth'
pod 'Firebase/Crash'
pod 'FirebaseUI/Database'
pod 'Fabric'
pod 'Crashlytics'
pod 'Digits'
pod 'TwitterCore'
pod 'Firebase/Database'
pod 'Firebase/Core'
pod 'Firebase/Messaging'
pod 'IQKeyboardManagerSwift'
pod 'Firebase/Storage'
pod 'MBProgressHUD'
pod 'Google/SignIn'
pod 'Firebase/Invites'
pod 'FBSDKCoreKit'
pod 'FBSDKShareKit'
pod 'FBSDKLoginKit'
pod 'FBSDKMessengerShareKit'
pod 'Alamofire', '~> 4.0'
pod 'TwitterKit'
pod 'SwiftyStoreKit'
end

target 'PrayerDeckTests' do

end

target 'PrayerDeckUITests' do

end

更新:

当我尝试更新 Podfile 并设置更具体的版本时,如 pod 'Firebase', '~> 4.0' 我在 iOS 终端中收到下一个错误: p>

- `FirebaseAnalytics (= 4.0.3)` required by `Firebase/Core (4.1.1)`
- `FirebaseAnalytics (~> 3.2)` required by `Google/Core (3.0.3)`
- `GoogleSignIn (~> 3.0)` required by `Google/SignIn (2.0.4)`
- `GoogleSignIn (~> 4.0)` required by `FirebaseInvites (2.0.1)`
- `Firebase/Invites` required by `Podfile`

【问题讨论】:

【参考方案1】:

您的 Podfile 正在使用已弃用的“Google/SignIn”,这会强制使用 Firebase 3.x 依赖项。

改成

pod 'GoogleSignIn'

【讨论】:

谢谢!我已经完成了,但是在执行 pod 更新后,我得到下一个错误:[!] 无法满足以下要求:-Firebase/Core (4.0.4) 要求的 FirebaseAnalytics (= 4.0.2) -Google/Core (3.0.3) 要求的 FirebaseAnalytics (~> 3.2) -@987654327 要求的 GoogleSignIn @ - Google/SignIn (2.0.4) 所需的 GoogleSignIn (~> 3.0) - FirebaseInvites (2.0.0) 所需的 GoogleSignIn (~> 4.0) - Podfile 所需的 Firebase/Invites 已找到满足 Firebase/Invites 依赖项的规范,但它们需要更高的最小部署目标。 根据该消息,Google/SignIn 似乎仍然存在 谢谢!这是我的错误。将 pod 'Google/SignIn' 更改为 pod 'GoogleSignIn' 对我有帮助! :) 您能说一下您是如何理解我应该使用 pod 'GoogleSignIn' (而不是 'Google/SignIn' )并且它需要 Firebase 3.x 的吗?我问你未来。因为花了很多时间尝试自己决定这个问题。多谢一次! ) CocoaPods 打印“[!] Google 已被弃用”

以上是关于firebase pod 安装的版本低于存在的最新版本的主要内容,如果未能解决你的问题,请参考以下文章

解决 Firebase 子规范 pod 依赖冲突的问题

无法在iOS应用中安装带有Firebase的pod。

pod 安装时出现 Flutter 错误:CocoaPods 找不到 pod“Firebase/CoreOnly”的兼容版本

Firebase/MLVisionTextModel 未通过 Pod iOS 安装

iOS 应用程序:Firebase 动态链接不适用于最新的 Pod 文件

如何安装 Firebase Crashlytics Swift 3.0