我得到错误
[core/no-app]尚未创建Firebase应用程序"[DEFAULT]"-调用Firebase.initializeApp((
但在我的代码中,我已经初始化了它。此外,在应用程序在移动上运行之前,安卓工作室编译器会这么说
I/FirebaseApp(20998(:设备解锁:初始化应用x 的所有Firebase API
我的代码:
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
var fbApp = await Firebase.initializeApp();
runApp(MyApp());
}
我不知道main((是否可以是异步的,也许这是问题的根源。以下是适用于我的代码。
void main() {
WidgetsFlutterBinding.ensureInitialized();
runApp(MyApp());
}
然后我在状态类中调用initializeApp((方法。
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
final Future<FirebaseApp> _initFirebaseSdk = Firebase.initializeApp();
// ... rest of my logic ...
}
初始化firebase而不分配给变量
当您将其分配给变量时,编译器可能不会将其设置为默认实例。
同时卸下Future<void>
,只更换void
然后您可以初始化firebase应用程序,而无需将其分配给任何变量。
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
}
如果您试图访问初始化的firebase的(具体(应用程序,您可以这样做:
同样的方法也可以用于firebase的子服务。
FirebaseAuth.instance