我有一个连接到 firebase 的 Flutter 应用程序,在 Flutter 和 Dart 的最后一次更新之后,我开始收到这些依赖错误:
The current Dart SDK version is 2.10.2.
Because my_app_one depends on firebase_messaging >=9.0.0-1.0.nullsafety.0 which requires SDK version >=2.12.0-0 <3.0.0, version solving failed.
pub get failed (1; Because my_app_onedepends on firebase_messaging >=9.0.0-1.0.nullsafety.0 which requires SDK version >=2.12.0-0 <3.0.0, version solving failed.)
我试图研究这个错误,我找到了一些解决方案,但他们没有解决这个问题。
pubspec.yaml/ 依赖项:
firebase_analytics: ^7.1.1
firebase_core: ^1.0.1
firebase_crashlytics: ^1.0.0
firebase_messaging: ^9.0.0
颤振医生:
[√] Flutter (Channel stable, 1.22.2, on Microsoft Windows [versão 10.0.19041.804], locale pt-BR)
[√] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
[√] Android Studio (version 4.0)
[√] VS Code (version 1.54.1)
[√] Connected device (1 available)
• No issues found!
答案 0 :(得分:2)
您需要在 pubspec.yaml 中更新您的环境 SDK。 其实是
sdk: ">=2.10.2 <3.0.0"
改成
sdk: ">=2.12.0 <3.0.0"
应该可以解决该问题,但请注意,您可能需要迁移您的应用以与空安全兼容。 您可以先通过在您的应用程序的根文件夹中执行此命令来检查它,pubspec.yaml 是:
dart pub outdated --mode=null-safety
您可以通过本指南找到有关迁移到空安全的更多信息: https://dart.dev/null-safety/migration-guide
答案 1 :(得分:2)
我遇到了类似的问题。我使用这些修复了它:
environment:
sdk: ">=2.12.0-0 <3.0.0"
dependencies:
flutter:
sdk: flutter
firebase_core: ^1.0.0
cloud_functions: ^1.0.0
firebase_auth: ^1.0.0
firebase_analytics: any
firebase_storage: ^8.0.0
cloud_firestore: ^1.0.0
通过将版本设置为any
,它会找到解决冲突的版本