正如标题所示,我正在尝试托管一个 Flutter 应用程序。但是,当我按照 Firebase 控制台中的指南添加 Flutter 应用程序时,我一直陷入困境。我的操作系统是Windows,添加Flutter应用程序的Firebase指南如下:
准备工作空间:
安装Firebase CLI并登录(运行firebase登录)
安装Flutter SDK
创建 Flutter 项目(运行 flutter create)
我已经有了一个带有最新版本的 Flutter SDK 的 Flutter 应用程序。安装 firebase 时出现了一些问题。我想使用 npm 来完成此操作,但这似乎不起作用,因此我决定使用独立二进制文件并将其放在我的 Flutter 应用程序文件夹中(我还将独立二进制文件重命名为 firebase.exe)。之后,它似乎起作用了,我能够运行 Firebase 并在我的 wokspace powershell 中运行 Firebase 命令。
安装并运行 FlutterFire CLI
现在是时候安装 Flutterfire CLI 以使 Firebase 将 Flutter 应用程序添加到我的 Firebase 中了。在这里,我在 Flutter 应用程序的 powershell 中使用以下命令安装了它:
dart pub global activate flutterfire_cli
这有效并且没有给出任何问题或警告。然后是命令让我的 Flutter 应用程序准备好将其链接到 Firebase:
flutterfire configure --project=PROJECT
PROJECT 是我输入项目真实名称的地方(为了清楚起见,我的项目不称为 PROJECT)。这是我陷入困境的地方,因为我在 powershell 中得到以下输出:
Fetching available Firebase projects...
Failed to parse JSON response from Firebase CLI. JSON response: #
Welcome to...
######## #### ######## ######## ######## ### ###### ########
## ## ## ## ## ## ## ## ## ## ##
###### ## ######## ###### ######## ######### ###### ######
## ## ## ## ## ## ## ## ## ## ##
## #### ## ## ######## ######## ## ## ###### ########
#
Let's make sure your Firebase CLI is ready...
>
FormatException: Unexpected character (at character 1)
#
这就是我陷入困境的地方,我的问题是有人知道如何解决这个问题吗?
我已经尝试过的一些事情:
firebase.exe
lib/firebase_options.dart
文件以下是我将 Firebase 添加到环境并将其与 flutter 链接的方法:
按照此FlutterFire中的说明进行操作,以便我可以将 firebase 项目与 flutter 项目链接起来
之后运行应用程序以确保一切正常。
我需要
firebase_CLI
将 firebase_options.dart
文件添加到项目中,以便我可以在 DefaultFirebaseOptions.currentPlatform
中使用
main.dart
我从
there下载了
CLI
并安装了它(您可以直接使用 Gmail 登录到您的 firebase 项目)。
我从
there下载了最新版本的
node.js
安装起来估计需要一段时间
powerShell
确保这三个路径已添加到
system variables
&& personal variables
C:\Users\USERNAME\AppData\Local\Pub\Cache\bin
C:\Users\USERNAME\AppData\Roaming\npm
C:\Program Files\nodejs
运行
node --version
&& npm --version
以确保一切正常
在命令提示符下运行
npm install -g firebase-tools
然后
dart pub global activate flutterfire_cli
如果
vsCode
打开,请将其关闭并再次打开
在
vsCode
中的flutter项目目录中运行flutterfire configure
您还可以阅读这些说明
它应该可以运行并且一切正常。