Flutter Web启动报错:FirebaseOptions cannot be null when creating the default app
解决Flutter Web中Firebase初始化"FirebaseOptions cannot be null"错误
问题原因
你调用Firebase.initializeApp()时未传入Web平台的Firebase配置参数,Flutter Web环境无法自动读取默认配置,导致抛出该错误。
修复步骤
获取Web平台Firebase配置
- 打开Firebase控制台,进入你的项目
- 点击「添加应用」,选择Web平台(</>图标)
- 完成注册后,复制生成的配置信息(包含
apiKey、authDomain等字段)
修改Flutter初始化代码
在main函数中,针对Web平台传入Firebase配置参数,修改后的代码示例:import 'package:firebase_core/firebase_core.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:url_strategy/url_strategy.dart'; void main() async { WidgetsFlutterBinding.ensureInitialized(); setPathUrlStrategy(); await Firebase.initializeApp( options: kIsWeb ? FirebaseOptions( apiKey: "替换为你的apiKey", authDomain: "替换为你的authDomain", projectId: "替换为你的projectId", storageBucket: "替换为你的storageBucket", messagingSenderId: "替换为你的messagingSenderId", appId: "替换为你的appId" ) : null, ); runApp(const YourApp()); }说明:
kIsWeb用于区分Web平台,非Web环境(如Android/iOS)无需传参,保持默认初始化逻辑即可。重新运行项目
执行以下命令清理并重启应用:flutter clean flutter run -d chrome
内容的提问来源于stack exchange,提问作者bobthebuilder
相关产品推荐
相关产品推荐

