M1 Mac上Flutter代码修改后iOS/Android模拟器无UI更新问题求助
问题分析与解决办法
可能的核心原因
- VS Code的Flutter插件未正确识别当前项目,或项目索引缓存出现异常
- VS Code的热重载/热重启机制未正常触发,存在M1架构下的兼容性适配问题
- VS Code终端的环境架构与Flutter版本不匹配(比如混用Rosetta终端和ARM原生Flutter)
具体解决步骤
1. 重置VS Code插件与项目缓存
- 完全关闭VS Code,删除以下路径的缓存目录:
- 原生VS Code:
~/Library/Application Support/Code/User/workspaceStorage/ - Insider版本:
~/Library/Application Support/Code - Insiders/User/workspaceStorage/
- 原生VS Code:
- 重新打开VS Code并重新加载项目
2. 手动清理项目并重启
- 在VS Code终端执行:
flutter clean flutter pub get flutter run - 不要依赖VS Code的自动启动按钮,手动执行命令确保构建流程完全重置
3. 匹配VS Code与Flutter的架构
- 检查终端架构:在VS Code终端输入
uname -m,输出arm64为原生ARM环境,x86_64为Rosetta模式 - 确保Flutter版本与VS Code架构一致:
- 若安装的是ARM原生Flutter,必须使用M1原生VS Code(右键VS Code图标,不要勾选"使用Rosetta打开")
- 若使用Rosetta模式的VS Code,需安装x86架构的Flutter版本
4. 检查VS Code的Flutter插件配置
- 打开VS Code设置(快捷键
Cmd+,):- 搜索
Flutter: Run Attach,确认设置为true - 搜索
Flutter Hot Reload On Save,勾选开启自动热重载 - 验证
Flutter SDK Path是否正确指向你的Flutter安装目录
- 搜索
5. 清除Flutter全局缓存
- 执行以下命令清理全局依赖缓存:
flutter pub cache clean - 重新执行
flutter pub get和flutter run
内容的提问来源于stack exchange,提问作者Anik Saha
相关产品推荐
相关产品推荐

