在课程“了解Flutter的Firebase”中缺少firebase_options.dart文件

vof42yt1  于 2023-06-24  发布在  Flutter
关注(0)|答案(4)|浏览(326)

我正在使用Flutter课程“了解Flutter的Firebase”,来自https://firebase.google.com/codelabs/firebase-get-to-know-flutter#4。
我在step_02中,我已经添加了以下来自阶段5的推荐代码。

import 'package:firebase_auth/firebase_auth.dart'; // new
import 'package:firebase_core/firebase_core.dart'; // new
import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart';
import 'package:provider/provider.dart';           // new

import 'firebase_options.dart';                    // new
import 'src/authentication.dart';                  // new
import 'src/widgets.dart';

在这个阶段的后面有一个测试它部分。但是它失败了,因为没有firebase_options.dart文件。如何生成此文件。
谢谢你。

sr4lhrrt

sr4lhrrt1#

以前,你必须从Firebase控制台下载google-service.jsonGoogleService-Info.plist文件,并将它们放在Flutter应用程序的android和ios文件夹中。
从Flutter 2.8开始,有一种新的方法可以在Flutter中初始化Firebase项目,以自动设置,为您添加必要的库和文件到android/ios/
1.在Firebase控制台中创建项目,但不需要下载上述文件或更改build. gradle文件
1.安装Firebase CLI here
1.在Flutter项目中运行dart pub global activate flutterfire_cli
1.运行flutterfire configure
这将启动一个命令行界面,让您选择要链接到Flutter项目的Firebase项目。完成此操作后,将在lib/文件夹中生成firebase_options.dart文件。
最后,在main.dart中初始化Firebase:

import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

void main() async {
    WidgetsFlutterBinding.ensureInitialized();
    await Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform);
    runApp(MyApp());
}
3zwtqj6y

3zwtqj6y2#

firebase_option文件在Flutter成功地配置了firebase项目和flutter应用程序后自动生成。对于Android,确保您已经将google-services.json文件添加到Android>app根目录中,对于iOS,将GoogleService-info.plist文件添加到Xcode项目的根目录中以及所有目标中。
如果您仍然有问题,我建议您直接从终端使用Firebase CLI来配置您的firebase项目。
1.从项目根终端,命令:

$ flutterfire configure   
    // This requires the Firebase CLI to work.

1.点击return或enter选择firebase项目。接下来,您将被要求选择配置应支持的平台,例如Android,iOS,Web.如果你还没有在firebase控制台中创建其中的一些,不要担心,因为它会在这一步中为你创建和注册它,并更新android build.gradle文件。

如果您已经安装了firebase_core插件,请继续执行步骤4。

1.通过从项目根目录运行以下命令来安装最新版本的firebase_core插件:

$ flutter pub add firebase_core

1.将导入添加到主文件:

import 'package:firebase_core/firebase_core.dart'; // 
 import 'firebase_options.dart'; // Generated file

1.更新你的main函数,用这个async函数初始化firebase:

Future<void> main() async {
   WidgetsFlutterBinding.ensureInitialized();
   await Firebase.initializeApp(options: 
   DefaultFirebaseOptions.currentPlatform);
   runApp(const YourAppName());
  }

1.删除google-services.json和google.plist文件,如果你以前安装过这些文件。
1.

$ flutter clean 
   $ flutter run

有关详细信息,请参阅FlutterFire文档。

eoigrqb6

eoigrqb63#

在完成Bugzilla提供的说明之后,我能够在lib目录中找到firebase_options.dart文件。我把导入的路径从'firebase_options.dart'更改为'../firebase_options.dart',它对我有效。

ttygqcqt

ttygqcqt4#

通过删除我现有的Firebase项目并创建一个新项目,禁用Google Analytics来解决这个问题。

相关问题