Android Flatter中runApp之前Firebase初始化App需要很多时间
我的问题是,如果执行以下代码,如何显示启动屏幕或加载屏幕:Android Flatter中runApp之前Firebase初始化App需要很多时间,android,firebase,flutter,Android,Firebase,Flutter,我的问题是,如果执行以下代码,如何显示启动屏幕或加载屏幕: void main() async{ WidgetsFlutterBinding.ensureInitialized(); await Firebase.initializeApp(); runApp(MyApp()); } 您只需使用Future Builder即可 void main() async{ WidgetsFlutterBinding.ensureInitialized(); //remove thi
void main() async{
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
runApp(MyApp());
}
您只需使用Future Builder即可
void main() async{
WidgetsFlutterBinding.ensureInitialized();
//remove this line from your code
//await Firebase.initializeApp();
runApp(MyApp());
}
这是MyApp()的代码
类MyApp扩展了无状态小部件{
最终未来_initialization=Firebase.initializeApp();
@凌驾
小部件构建(构建上下文){
返回材料PP(
标题:“颤振演示”,
家:未来建设者(
未来:_初始化,
生成器:(上下文,快照){
if(snapshot.connectionState==connectionState.done){
返回LoginWrapper();
}
返回屏幕();
},
),
);
}
}
它在加载firebase应用程序时显示您的SplashScreen;) 你的标题说,
initializeApp
花费了很多时间,这是不应该的。你能告诉我需要多长时间吗?@FrankvanPuffelen说。。然后,如果你想显示闪屏,这里有很多Q&A等等。这是其中之一:
class MyApp extends StatelessWidget {
final Future<FirebaseApp> _initialization = Firebase.initializeApp();
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
home: FutureBuilder(
future: _initialization,
builder: (context, snapshot) {
if (snapshot.connectionState == ConnectionState.done) {
return LoginWrapper();
}
return SplashScreen();
},
),
);
}
}