我正在尝试运行我的应用程序,但它出现以下错误
- [core/no-app]尚未创建Firebase应用程序“[DEFAULT]”-调用Firebase.initializeApp()*
我已经调用了firebase.initializeApp()
,但错误仍然是相同的。这里是我的代码的主文件
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return ChangeNotifierProvider(
create: (_) => AppointmentsProvider(),
child: MaterialApp(
title: 'Car Wash App',
theme: ThemeData(
primarySwatch: Colors.blue,
visualDensity: VisualDensity.adaptivePlatformDensity,
),
home: FutureBuilder(
future: Firebase.initializeApp(),
builder: (ctx, snap) =>
snap.connectionState == ConnectionState.waiting
? Center(
child: Text('Loading...'),
)
: StreamBuilder(
stream: FirebaseAuth.instance.authStateChanges(),
builder: (ctx, snapShot) =>
snapShot.hasData ? HomePage() : UserAuth(),
),
),
routes: {
HomePage.routeName: (_) => HomePage(),
HistoryPage.routeName: (_) => HistoryPage(),
MyAppointments.routeName: (_) => MyAppointments(),
PackagesPage.routeName: (_) => PackagesPage(),
VehicleType.routeName: (_) => VehicleType(),
SlotPage.routeName: (_) => SlotPage(),
ExtraServicesPage.routeName: (_) => ExtraServicesPage(),
SummaryPage.routeName: (_) => SummaryPage(),
DetailedScreen.routeName: (_) => DetailedScreen(),
PaymentMethodScreen.routeName: (_) => PaymentMethodScreen(),
},
),
);
}
}
任何形式的帮助都是非常感谢的。谢谢
6条答案
按热度按时间nbysray51#
问题是你已经在flutter项目中配置了firebase,但是在应用启动之前你还没有初始化它。
你需要异步初始化firebase sdk。这是如何去做的。
bjp0bcyl2#
当您无法在项目和应用级build.gradle文件的Android端添加所需的依赖项时,就会发生此错误
u4dcyp6a3#
1.检查您的android/build. gradle文件。
类路径'com. google. gms:谷歌服务:4.3.14'(使用最新版本)
1.转到app/build. gradle文件。在依赖项之外添加插件
应用插件:"谷歌公司.通用汽车公司.谷歌服务"
nwnhqdif4#
您应该在main()中初始化它。
例如:
This link可能对您有帮助。
编辑:第一个链接已经存档。This is在Flutter项目中设置firebase的新方法。步骤非常相同。最后一个链接包含配置firebase插件的另一个步骤。
步骤如下:
mrfwxfqh5#
如果以上答案没有帮助,您可以通过以下步骤解决问题:
它从字面上解决了我的问题。我希望这会有帮助。
ndasle7k6#
initializeApp()是一个异步函数。你应该使用“await”来确保Firebase初始化。并使用WidgetsFlutterBinding.ensureInitialized()来防止抖动错误。