Flutter 2 - firebase_remote_config 0.6.0 & firebase_core ^0.7.0 版本冲突

Posted

技术标签:

【中文标题】Flutter 2 - firebase_remote_config 0.6.0 & firebase_core ^0.7.0 版本冲突【英文标题】:Flutter 2 - firebase_remote_config 0.6.0 & firebase_core ^0.7.0 version conflict 【发布时间】:2021-06-02 18:27:45 【问题描述】:

根据 FlutterFire 文档,我已将我的 Flutter 项目更新为 Flutter 2。

我已将我的项目转换为 flutter channel beta 并且依赖项更新如下:

很遗憾,我收到以下错误:

因为 firebase_remote_config 0.6.0 依赖于 firebase_core ^0.7.0 并且没有任何版本的 firebase_remote_config 匹配 >0.6.0

注意:我也尝试过使用 flutter channel dev,但我遇到了同样的错误。

另一个错误[更新]:

因为 flutter_local_notifications_platform_interface 2.0.0+1 依赖 在 plugin_platform_interface ^1.0.2 上并且没有 flutter_local_notifications_platform_interface 匹配 >2.0.0+1

我的 pubspec.yaml 是:

  # For Location Information (Getting Location Details on Login or Register)
  geolocator: ^7.0.1
  geolocator_platform_interface: ^2.0.0

  flutter_local_notifications: ^4.0.1+1
  flutter_local_notifications_platform_interface: ^2.0.0+1
  plugin_platform_interface: ^2.0.0

以上所有依赖都相互冲突。

【问题讨论】:

【参考方案1】:

尝试使用firebase_remote_config: ^0.9.0-dev.0 而不是firebase_remote_config: ^0.6.0

此版本不是 null 安全的,但已创建为允许 与其他 null-safe FlutterFire 包的兼容性,例如 firebase_core。

https://pub.dev/packages/firebase_remote_config/versions/0.9.0-dev.0

如果还是一样,请尝试使用firebase_core: ^1.0.0

【讨论】:

【参考方案2】:

删除消息和核心背后的版本,它可以工作:

firebase_messaging:

firebase_core:

【讨论】:

【参考方案3】:

由于我做了一些 try & catch,我通过使用 dependency_overrides

得到了解决方案

我在这里发帖:Flutter version solving failed error - after Flutter 2 upgrade

dependency_overrides:
  firebase_auth: ">=1.0.0"
  firebase_core: ">=0.7.0"
  firebase_messaging: ">=8.0.0-dev.14"
  firebase_remote_config: ">=0.6.0"
  firebase_auth_web: ">=0.2.0"
  firebase: ">=7.0.0"
  flutter_local_notifications: ">=4.0.0"

这只是一个例子。您可以根据需要使用依赖项。

【讨论】:

【参考方案4】:

在包冲突的情况下使用dependency_overrides

dependency_overrides:
  firebase_core: 1.1.0

想要了解更多关于如何flutter解析包版本,包中为什么会出现冲突,以及如何解决的更多信息,请点击以下链接:

https://medium.com/cashify-engineering/flutter-dependencies-resolution-2faecdbfce03

【讨论】:

以上是关于Flutter 2 - firebase_remote_config 0.6.0 & firebase_core ^0.7.0 版本冲突的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 13 和 Flutter 2.5.1 - 致命错误:找不到“Flutter/Flutter.h”文件 #import <Flutter/Flutter.h>

Flutter--实战Flutter 简介

找不到文件 Flutter/Flutter.h

Flutter 2.10 升级指南

flutter项目升级2.0过程填坑记录

Flutter.2.Flutter与OC的双向调用