You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

旧Flutter应用升级3.10.2后构建失败,求助解决权限及编译问题

问题解决:Flutter 3.10.2构建失败(package_info_plus_windows兼容问题)

错误原因

构建错误来自package_info_plus_windows:2.1.0,该版本的FFI Struct定义中使用了可空字段int? wLanguage和int? wCodePage,而Flutter 3.10.x升级了Dart FFI规则,禁止Struct/Union中的字段为可空类型,导致编译失败。这个包是你pubspec中某个依赖间接引入的(比如upgrader、rate_my_app这类需要获取应用信息的包)。

解决方案

1. 强制升级兼容的package_info_plus版本

在你的pubspec.yaml中添加依赖覆盖,指定支持Flutter 3.10的package_info_plus版本(建议用最新稳定版):

dependency_overrides:
  package_info_plus: ^4.0.0
  package_info_plus_windows: ^4.0.0

注:如果4.0.0仍有问题,可尝试更高版本,比如^4.2.0,确保版本兼容Flutter 3.10.x。

2. 清理并重新获取依赖

执行以下命令:

flutter clean
flutter pub get

然后重启你的Android Studio,点击File > Invalidate Caches...清除IDE缓存,避免旧缓存干扰。

3. 升级其他老旧依赖

你的pubspec中部分依赖版本较旧,可能也存在Flutter 3.10兼容性问题:

  • 将upgrader升级到最新稳定版(比如^6.1.0)
  • 将syncfusion_flutter_pdfviewer从beta版切换到稳定版(比如^25.1.35)
  • 其他依赖如share_plus、path_provider也建议升级到最新兼容版本

4. iOS构建问题处理

iOS构建失败通常是pod依赖冲突导致,执行以下步骤:

cd ios
pod deintegrate
pod install
cd ..
flutter run

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 11:42:42