我正在嘗試運行我的應用程式,但出現以下錯誤
[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(),
},
),
);
}
}
任何形式的幫助都非常感謝。謝謝
uj5u.com熱心網友回復:
您應該在 main() 中初始化它。
例如:
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
runApp(MyApp());
}
此鏈接可能對您有所幫助。
uj5u.com熱心網友回復:
Firebase.initializeApp() 是一個異步函式。您應該使用“await”來確保 Firebase 初始化。并使用 WidgetsFlutterBinding.ensureInitialized() 來防止抖動錯誤。
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
runApp(const MyApp());
}
uj5u.com熱心網友回復:
問題是您在 flutter 專案中配置了 firebase,但在應用程式啟動之前尚未對其進行初始化。
您需要異步初始化 firebase sdk。這就是如何去做。
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
runApp(const MyApp());
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/394268.html
