Flutter(Dart)接入Firebase时报错,与教程代码一致仍无法正常运行
问题根因
你遇到的报错核心原因是新版Flutter Firebase SDK要求必须在使用任何Firebase服务前完成初始化操作,旧版教程大多没有提及这一必填步骤,这也是你按教程写代码仍报错的主要原因。
修复步骤
- 1 调整main.dart代码,在启动应用前完成Firebase初始化,修改后的完整代码如下:
import 'package:firebasedenemem/signup_screen.dart'; import 'package:flutter/material.dart'; import 'package:firebase_core/firebase_core.dart'; void main() async { WidgetsFlutterBinding.ensureInitialized(); await Firebase.initializeApp(); runApp(const MyApp()); } class MyApp extends StatelessWidget { const MyApp({Key? key}) : super(key: key); @override Widget build(BuildContext context) { return MaterialApp( title: 'Flutter Demo', theme: ThemeData( primarySwatch: Colors.blue, ), home: const SignupScreen()); } }
注意检查导入的screen文件名拼写是否和实际文件一致,避免把signup_screen误写为singup_screen引发导入报错。
- 2 确认Firebase配置文件已正确放置:
- Android端将
google-services.json放入android/app目录下 - iOS端将
GoogleService-Info.plist放入ios/Runner目录下
- Android端将
- 3 检查pubspec.yaml配置:
首先确认firebase_core、firebase_auth依赖版本和你当前使用的Flutter版本兼容,其次检查是否正确声明了图片资源,配置示例如下:
dependencies: flutter: sdk: flutter firebase_core: ^2.15.0 firebase_auth: ^4.10.0 flutter: assets: - assets/images/logo.png
完成以上步骤后执行flutter clean清理缓存,再重新运行项目即可解决报错。
内容的提问来源于stack exchange,提问作者Meriç Türkyılmaz
相关产品推荐
相关产品推荐

