initialize static method
Implementation
static Future initialize({
required String apiKey,
required String projectId,
required String appId,
required String messagingSenderId,
bool useGoogleServicesJson = false,
}) async {
if (Platform.isWindows) {
FireDartFirebaseAuth.initialize(apiKey, FireDartVolatileStore());
FireDartFirestore.initialize(projectId);
//Wait Until SignIn Ready?
// bool ready = false;
// var auth = FireDartFirebaseAuth.instance;
// auth.signInState.listen((state) {
// print("Signed ${state ? "in" : "out"}");
// ready = false;
// });
// while (ready == false) {
// print("Check Firebase Status..");
// await Future.delayed(Duration(milliseconds: 200));
// }
} else {
if (useGoogleServicesJson) {
await Firebase.initializeApp();
} else {
await Firebase.initializeApp(
options: FirebaseOptions(
appId: appId,
apiKey: apiKey,
messagingSenderId: messagingSenderId,
projectId: projectId,
),
);
}
bool ready = false;
FirebaseAuth.instance.authStateChanges().listen((event) {
ready = true;
});
while (ready == false) {
print("Check Firebase Status..");
await Future.delayed(Duration(milliseconds: 200));
}
}
}