升级Flutter 2后应用编译失败提示Flutter.h缺失该如何解决
问题根因
本次报错由两个核心问题导致:
- 项目依赖的
shared_preferences版本为0.4.3,属于过时版本,不兼容Flutter 2.x开发环境 - 升级Flutter大版本后,iOS侧的编译缓存、依赖配置未同步更新,导致Flutter头文件无法被正常识别
解决方案
- 升级
shared_preferences依赖
修改项目根目录下的pubspec.yaml文件,将shared_preferences的版本约束升级到^2.0.0及以上版本,修改完成后执行flutter pub get拉取新依赖。 - 清理历史编译缓存
执行以下命令清除所有旧的编译产物和iOS依赖文件:flutter clean rm -rf ios/Pods rm -rf ios/Podfile.lock - 重新安装iOS侧依赖
进入项目ios目录,执行pod install重新生成iOS原生依赖配置。如果执行过程中提示CocoaPods版本不兼容,可先执行sudo gem install cocoapods更新CocoaPods到最新稳定版后重试。 - 调整Xcode编译配置
打开iOS项目的Runner.xcworkspace文件,确认两项配置:- 编译系统选择「New Build System」
- iOS最低支持版本设置为12.0及以上,匹配Flutter 2的最低系统要求
- 重新编译运行
回到项目根目录执行flutter run启动项目即可。
内容的提问来源于stack exchange,提问作者riki
相关产品推荐
相关产品推荐

