繁体   English   中英

Flutter Web 上未调用 WidgetsFlutterBinding.ensureInitialized 或 Firebase 初始化应用程序

[英]WidgetsFlutterBinding.ensureInitialized or Firebase initialize app is not called on Flutter web

每当我启动我的 Flutter Web 应用程序时,我都会收到一条错误消息,告诉我 firebase.initializeapp 尚未被调用,但是代码在 android 上运行良好。

新的 Flutter 作为平台

PS:旧方式如下

有了 Flutter 作为 firebase 平台的新支持。 一切实际上都是由 firebase 自己设置的。 只需按照步骤操作即可完成连接。

  1. 创建一个 Firebase 项目。
  2. 创建一个颤振项目。
  3. 使用代码curl -sL https://firebase.tools | bash安装 Firebase CLI curl -sL https://firebase.tools | bash
  4. 通过 CLI Firebase login到 Firebase 帐户。
  5. 激活 Firebase CLI dart pub global activate flutterfire_cli
  6. 配置你的项目flutterfire configure --project-name
  7. 在询问时选择您想要的平台。
  8. 并在 main.dart 中初始化main.dart ,如下所示
void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp(
    options: DefaultFirebaseOptions.currentPlatform,
  );
  runApp(const MyApp());
}

旧方式,我们必须创建单独的特定于平台的连接。

在firebase端设置项目后,我想你已经完成了。 您必须配置 Web 部件。 如下

导航到您的 Web 构建的根目录并打开 index.html。 web->index.html

以及 main.dart.js 脚本标签上方的以下代码检查后期代码

    <!-- ADD THIS BEFORE YOUR main.dart.js SCRIPT -->

    <!-- The core Firebase JS SDK (always required for using any Firebase service) -->
    <script src="https://www.gstatic.com/firebasejs/9.9.0//firebase-app.js"></script>
    <!-- Firebase Auth SDK -->
    <script src="https://www.gstatic.com/firebasejs/9.9.0//firebase-auth.js"></script>
    <script>
      // Your web app's Firebase configuration
      var firebaseConfig = {
        apiKey: '...',
        authDomain: '...',
        databaseURL: '...',
        projectId: '...',
        storageBucket: '...',
        messagingSenderId: '...',
        appId: '...',
      }
      // Initialize Firebase
      firebase.initializeApp(firebaseConfig)
    </script>
    <!-- END OF FIREBASE INIT CODE -->

您将从 firebase 项目中的 web 应用程序的设置中获取 firebase 配置详细信息。 你可以从那里复制它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM