Flutter 2.5.2稳定版Web应用Chrome启动崩溃,移动端运行正常如何解决?
问题原因
- 版本兼容问题:你使用的Flutter 2.5.2属于较早的稳定版本,该版本的Web调试协议与后续更新的高版本Chrome不匹配,调试过程中调用
getMemoryUsage接口时无法适配Chrome更新后的协议规则,直接触发进程退出。移动端运行正常是因为iOS/Android端的调试逻辑独立于Chrome协议,不受影响。 - Chrome扩展干扰:广告拦截、隐私防护类的Chrome扩展会拦截本地调试的WebSocket连接,导致Flutter调试服务和Chrome之间的通信中断,触发应用强制结束。
- 本地缓存损坏:Flutter全局缓存或项目的Web构建缓存出错,也会偶发无明确报错的启动崩溃问题。
解决方案
按操作成本从低到高排序,可依次尝试:
- 禁用Chrome扩展启动调试:运行命令
flutter run -d chrome --web-browser-flag "--disable-extensions",直接启动无扩展的Chrome实例进行调试,排除扩展拦截的可能性。 - 跳过DevTools调试工具连接:启动时添加禁用DevTools的参数
flutter run -d chrome --no-devtools,跳过内存检测等调试接口调用,规避版本兼容导致的接口报错。 - 清理缓存修复:在项目目录下执行
flutter clean清理项目构建缓存,再执行flutter pub cache repair修复全局Flutter依赖缓存,重启后再次尝试启动。 - 版本适配修复:如果可以升级Flutter版本,直接升级到Flutter 2.10.0及以上的稳定版,该版本已经官方修复了和高版本Chrome的Web调试协议兼容问题。如果不能升级Flutter版本,可临时降级Chrome到94版本,该版本和Flutter 2.5.2的调试协议完全匹配。
内容的提问来源于stack exchange,提问作者Gonz Campos
相关产品推荐
相关产品推荐

