Flutter类型赋值错误求助:Object?无法赋值给Output?
问题分析与解决方案
问题根源
错误并非出自你的main.dart代码,而是间接依赖的smithy:0.5.2包存在类型不兼容问题——该版本的代码在最新Flutter搭载的Dart 3.x类型检查规则下,无法将Object?类型赋值给Output?类型,属于依赖包的版本兼容冲突。
修复步骤
更新Amplify相关依赖
打开项目根目录的pubspec.yaml文件,将所有Amplify系列依赖更新到最新稳定版,示例配置如下:dependencies: amplify_api: ^1.0.0 # 替换为实际最新版本 amplify_auth_cognito: ^1.0.0 amplify_datastore: ^1.0.0 amplify_flutter: ^1.0.0 amplify_storage_s3: ^1.0.0 # 其他原有依赖保持不变可通过执行
flutter pub outdated命令,查看当前依赖的可更新版本号。清理并重装依赖
在终端依次执行以下命令:flutter clean flutter pub get兜底方案:强制指定兼容的smithy版本
若更新Amplify依赖后仍报错,可在pubspec.yaml中添加依赖覆盖,指定与当前Flutter/Dart版本兼容的smithy版本:dependency_overrides: smithy: ^0.6.0 # 选择适配的版本号执行
flutter pub get后重新运行项目。
内容的提问来源于stack exchange,提问作者khomotjo_codes
相关产品推荐
相关产品推荐

