You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Flutter SDK版本修改失败求助:依赖firebase_auth与firebase_auth_oauth时版本解析错误

问题分析与解决方案

你的问题核心在于Flutter/Dart版本的稳定性与依赖包的版本约束不匹配,具体原因和解决方法如下:

你当前使用的Dart SDK是预发布的开发版(2.12.0-224.0.dev),而firebase_auth_oauth:^1.0.0要求的是稳定版的Dart 2.12.0及以上(约束>=2.12.0 <3.0.0默认指向稳定版语义化版本,dev版的版本号不会被识别为满足该约束)。哪怕你修改了pubspec的SDK范围,当前的Dart dev版本依然不满足依赖包对稳定版Dart的要求,所以才会持续报错。

解决步骤

1. 升级Flutter到稳定版(推荐方案)

Flutter 2.0及以上的稳定版才正式捆绑了稳定版的Dart 2.12+,这是满足firebase_auth_oauth要求的基础:

  • 打开终端,切换到稳定通道:
    flutter channel stable
    
  • 执行升级命令:
    flutter upgrade
    
  • 升级完成后,确认Dart版本是稳定版的2.12+(执行dart --version查看)
  • 保持pubspec.yaml中的SDK约束为:
    environment:
      sdk: ">=2.12.0 <3.0.0"
    
  • 最后执行flutter pub get,应该就能成功解析依赖。

2. 检查其他依赖的版本冲突(辅助排查)

如果升级后仍有问题,检查pubspec.yaml中其他依赖是否有要求更低SDK版本的情况——比如某些旧依赖可能还不支持Dart 2.12的空安全特性,需要同步升级这些依赖到支持空安全的版本。

补充说明

你的当前Flutter版本是1.26.0-12.0.pre(dev通道),属于Flutter 2.0正式发布前的预览版,对应的Dart版本也是预发布的dev版,这类版本通常会和要求稳定版SDK的依赖包出现版本解析冲突,切换到稳定版是最稳妥的解决方式。

内容的提问来源于stack exchange,提问作者venum

火山引擎 最新活动