接入Firebase后台后Flutter热重载与热重启失效问题
Flutter接入Firebase后热重载/热重启失效的解决办法
问题说明
接入Firebase项目后,热重载与热重启功能完全失效,多个不同Flutter项目对接不同Firebase项目均出现该问题。仅添加Firebase官方指引的初始化代码后就触发报错:
main() async { WidgetsFlutterBinding.ensureInitialized(); await Firebase.initializeApp(); runApp(MyApp()); }
报错信息如下:
Unhandled exception: Null check operator used on a null value #0 IncrementalCompiler._initializeExperimentalInvalidation (package:front_end/src/fasta/incremental_compiler.dart:1226:53) <asynchronous suspension> #1 IncrementalCompiler.computeDelta.<anonymous closure> (package:front_end/src/fasta/incremental_compiler.dart:324:11) <asynchronous suspension> #2 IncrementalCompiler.compile (package:vm/incremental_compiler.dart:68:50) <asynchronous suspension> #3 FrontendCompiler.compile (package:frontend_server/frontend_server.dart:572:11) <asynchronous suspension> #4 listenAndCompile.<anonymous closure> (package:frontend_server/frontend_server.dart:1210:11) <asynchronous suspension>
可行解决步骤
- 升级Flutter SDK到稳定版最新版本:该报错属于Flutter前端编译服务的空指针bug,旧版本SDK存在此类问题,升级后可修复。执行命令
flutter upgrade完成升级。 - 清理项目缓存并重新获取依赖:运行
flutter clean清除旧编译缓存,再执行flutter pub get重新拉取所有依赖包。 - 同步Firebase插件版本:确保pubspec.yaml中所有Firebase相关插件(如firebase_core)使用最新兼容版本,避免版本不匹配导致编译冲突。
- 验证项目配置:检查Firebase的配置文件(android/google-services.json、ios/GoogleService-Info.plist)是否正确放置,配置文件缺失或错误也可能间接影响增量编译。
内容的提问来源于stack exchange,提问作者chris
相关产品推荐
相关产品推荐

