当前位置: 首页 > 知识库问答 >
问题:

没有得到Firebaase应用程序已创建[复制]

鲁丰
2023-03-14

我正在创建一个颤振应用程序。dart我想检查是否有用户登录,是否显示主菜单屏幕,否则显示欢迎屏幕,但当我运行应用程序时,它会抛出我

[core/no-app] No Firebase App '[DEFAULT]' has been created - call Firebase.initializeApp()

但是我确实初始化了它,你能看看我的代码吗,也许我没有正确调用所有的方法

import 'package:flutter/material.dart';
import 'package:modal_progress_hud/modal_progress_hud.dart';
import 'package:status_alert/status_alert.dart';
import 'package:vhunt/screens/login_screen.dart';
import 'package:vhunt/screens/main_menu.dart';
import 'package:vhunt/screens/register_screen.dart';
import 'package:vhunt/screens/welcome_screen.dart';
import 'package:firebase_core/firebase_core.dart';
import 'package:firebase_auth/firebase_auth.dart';

User loggedInUser;
void main() {
  runApp(myApp());
}

class myApp extends StatefulWidget {
  @override
  _myAppState createState() => _myAppState();
}

class _myAppState extends State<myApp> {
  final _auth = FirebaseAuth.instance;
  bool _initialized = false;
  bool _error = false;
  void initializeFlutterFire() async {
    try {
      await Firebase.initializeApp();
      setState(() {
        _initialized = true;
      });
    } catch (e) {
      setState(() {
        _error = true;
      });
    }
  }

  void checkUserLogged() async {
    try {
      if (_initialized == true) {
        final user = await _auth.currentUser;
        if (user != null) {
          loggedInUser = user;
        }
      }
    } catch (e) {
      print(e);
    }
  }

  @override
  void initState() {
    initializeFlutterFire();
    checkUserLogged();
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    if (_error) {
      StatusAlert.show(context,
          duration: Duration(seconds: 3),
          title: 'Something Went Wrong',
          subtitle: 'We are sorry, try again later',
          configuration: IconConfiguration(
            icon: Icons.close,
          ));
    }

    return MaterialApp(
      initialRoute: loggedInUser == null ? WelcomeScreen.id : MainMenu.id,
      routes: {
        WelcomeScreen.id: (context) => WelcomeScreen(),
        RegistrationScreen.id: (context) => RegistrationScreen(),
        LogInScreen.id: (context) => LogInScreen(),
        MainMenu.id: (context) => MainMenu(
              loggedinUser: loggedInUser,
            ),
      },
    );
  }
}

在我添加Firebase Auth之前,它工作得很好。提前谢谢你!

共有1个答案

惠翰藻
2023-03-14

您必须调用Firebase。在FirebaseAuth之前初始化EAPP()。实例,以及Firebase SDK的任何其他用途。

 类似资料:
  • 我想创建反应应用程序,但我的npx创建反应应用程序myapp命令不工作D:\AED 在D:\AED\aed中创建新的React应用。 安装包。这可能需要几分钟。使用cra模板安装反应、反应-多姆和反应-脚本... 它被困在这里已经两个小时了。

  • 我创建了一个口袋妖怪应用程序,但当我试图运行它时,它总是崩溃。应用程序只需要移动地图上的口袋妖怪。使用的IDE是Kotlin。请帮助我找到为什么我的应用程序崩溃的错误。代码是:class MapsActivity:AppCompatActivity(),OnMapReadyCallback{ } 我的名字是Aakarsh Kamboj,我最近开始了android的开发

  • 问题内容: 我想知道是否有可能仅使用Java创建Android应用。没有XML,没有其他东西。 在Eclipse中,当我创建一个新的Android项目时,将自动生成Manifest xml文件和主布局xml文件。我可以删除这些文件并用Java文件替换吗? 问题答案: 对于布局,您有两个选择 在XML中声明UI元素。Android提供了一个简单的XML词汇表,它对应于View类和子类,例如小部件和布

  • Ember CLI,Ember的命令行界面提供了一个标准的项目结构,一组开发工具和一个插件系统。这允许Ember开发人员专注于构建应用程序,而不是构建使它们运行的​​支持结构。可通过ember --help显示Ember CLI提供的命令,或通过ember help <command-name>查看特定命令的信息。 创建应用程序 $ ember new super-rentals 上述ember

  • 主要活动 公共类MainActivity扩展AppCompatActivity{String response; 公共类GetExample{OkHttpClient客户端; Xml文件

  • 我使用的是Eclipse Kepler,我已经安装了Spring IDE和STS,但当我创建Spring MVC Template项目时,出现了错误,然后我转到Maven Update选项,但出现了错误。我不知道为什么。求求你,救命! 错误:项目构建过程中出错[firstSpring]构建过程中发生错误。在项目“firstSpring”上运行构建器“分面项目验证构建器”时出错。无法初始化类org.