我正在制作一个 React-Native 移动应用程序,并希望合并 Firebase 和 Firebase 身份验证。但是,当我运行“pod install”或“pod update”时,我遇到了此错误:
我做了一些研究,发现这个问题尚未被 Google 解决(https://issuetracker.google.com/issues/254418199),但我遇到了一个解决方法(https://github.com)。 com/firebase/firebase-ios-sdk/issues/10359),其中表示要向 Podfile 添加版本说明符:pod 'FirebaseAuth', '>= 9.6.0'。但是,即使我将该行添加到 iOS 文件夹中的 Podfile 中,相同的错误仍然存在。我可以知道我是否做错了什么吗?
我偶然发现了同样的问题。看来这是与最新 Firesbase SDK 版本 (10) 的兼容性问题。
目前对我有用的方法是将其放在 Podfile 的顶部:
$FirebaseSDKVersion = '9.6.0'
(文档)
这会覆盖默认的 firebase sdk 并确保它使用降级版本。
现在只需执行
pod install
并尝试一下。如果不起作用,请尝试删除 Podfile.lock 和 Pods 文件夹,然后重试。
顺便说一句,我不需要 Podfile 中的这一行作为您提到的共享资源之一:
pod 'FirebaseAuth', '>= 9.6.0'
尝试删除Podfile.lock并运行
cd ios && pod install --repo-update
对我有帮助的是将其添加到我的 pod 文件中。
pod 'GTMSessionFetcher', :modular_headers => true
然后运行
arch -x86_64 pod update GTMSessionFetcher/Core
我正在使用 Unity 游戏引擎,并且在我的 iOS 版本中遇到了同样的问题。但是,我通过识别 GTMSessionFetcher/Core 的常见依赖项版本设法解决了这个问题。最初,我不得不降级到 Firebase 9.6.0,因为与 Firebase 版本 10 和 GoogleSignIn 4.0.2 没有共同的依赖关系。
这是修改后的 pod 文件:
来源“https://cdn.cocoapods.org/” 平台:ios,'11.0' 目标“UnityFramework”做 pod 'Firebase/Auth', '9.6.0' Pod 'Firebase/Core', '9.6.0' Pod 'Firebase/Firestore', '9.6.0' pod 'Firebase/函数', '9.6.0' pod 'Firebase/消息传递', '9.6.0' pod 'FirebaseInstallations' pod 'GoogleSignIn', '4.0.2' pod 'GTMSessionFetcher/Core', '1.7' 结尾 目标“Unity-iPhone” 结尾 使用框架! :链接 => :静态
此 pod 文件中的关键行是:
pod 'GTMSessionFetcher/Core', '1.7'
我为所有这些选择了完全相同的通用版本。我希望这有帮助。
对我来说帮助定义了 GTMSessionFetcher 的特定版本,例如:
pod 'GTMSessionFetcher', '~> 2.1'
检查消息错误以了解您的情况的要求,要求:
GTMSessionFetcher (~> 1.1) and GTMSessionFetcher (~> 2.1)
Podfile.lock 最新版本可能打破了其中一个要求,因此在 Podfile 中指定符合要求的确切版本就可以了。
pod 更新 GTMSessionFetcher/Core