Flutterfire 配置意外字符(字符 1)错误

问题描述 投票:0回答:10

我正在开发一个使用 flutter 的项目,我想向我的项目添加 crashlytics。其他一切都有效,但

flutterfire configure
给了我 json 错误。我到处寻找所有可能的答案,但仍然没有解决问题。

npm 命令

- firebase login
- npm install -g firebase-tools
- dart pub global activate flutterfire_cli
- flutterfire configure

所有这些命令也适用于 android studio 终端。但 flutterfire 给出 json 错误。 我已经为 firebase 添加了 android 依赖项。

错误日志

⠏ Fetching available Firebase projects...
Unhandled exception:
FormatException: Unexpected character (at character 1)
#
^

#0      _ChunkedJsonParser.fail (dart:convert-patch/convert_patch.dart:1383:5)
#1      _ChunkedJsonParser.parseNumber (dart:convert-patch/convert_patch.dart:1250:9)
#2      _ChunkedJsonParser.parse (dart:convert-patch/convert_patch.dart:915:22)
#3      _parseJson (dart:convert-patch/convert_patch.dart:35:10)
#4      JsonDecoder.convert (dart:convert/json.dart:612:36)
#5      runFirebaseCommand (package:flutterfire_cli/src/firebase.dart:95:25)
<asynchronous suspension>
#6      getProjects (package:flutterfire_cli/src/firebase.dart:114:20)
<asynchronous suspension>
#7      ConfigCommand._selectFirebaseProject (package:flutterfire_cli/src/commands/config.dart:278:24)
<asynchronous suspension>
#8      ConfigCommand.run (package:flutterfire_cli/src/commands/config.dart:368:37)
<asynchronous suspension>
#9      CommandRunner.runCommand (package:args/command_runner.dart:209:13)
<asynchronous suspension>
#10     main (file:///C:/Users/USER/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutterfire_cli-0.2.4/bin/flutterfire.dart:57:5)
<asynchronous suspension>
⠧ Fetching available Firebase projects...
Unhandled exception:
FormatException: Unexpected character (at character 1)
#
^

#0      _ChunkedJsonParser.fail (dart:convert-patch/convert_patch.dart:1383:5)
#1      _ChunkedJsonParser.parseNumber (dart:convert-patch/convert_patch.dart:1250:9)
#2      _ChunkedJsonParser.parse (dart:convert-patch/convert_patch.dart:915:22)
#3      _parseJson (dart:convert-patch/convert_patch.dart:35:10)
#4      JsonDecoder.convert (dart:convert/json.dart:612:36)
#5      runFirebaseCommand (package:flutterfire_cli/src/firebase.dart:95:25)
<asynchronous suspension>
#6      getProjects (package:flutterfire_cli/src/firebase.dart:114:20)
<asynchronous suspension>
#7      ConfigCommand._selectFirebaseProject (package:flutterfire_cli/src/commands/config.dart:278:24)
<asynchronous suspension>
#8      ConfigCommand.run (package:flutterfire_cli/src/commands/config.dart:368:37)
<asynchronous suspension>
#9      CommandRunner.runCommand (package:args/command_runner.dart:209:13)
<asynchronous suspension>
#10     main (file:///C:/Users/USER/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutterfire_cli-0.2.4/bin/flutterfire.dart:57:5)
<asynchronous suspension>

您能帮我解决这个问题吗?

flutter firebase crashlytics
10个回答
3
投票

对于我们这些使用 Windows 的人来说,不要忘记检查您是否正在运行旧版本,您可能已将 PATH 配置为指向该旧版本。这似乎是我的情况的问题。我通过删除旧的 Windows 二进制文件解决了这个问题,然后使用 npm 进行了全新安装(全新/更新的 Windows 安装也可能有效)。 :

  • npm install -g firebase-tools

随后:

  • firebase 注销
  • Firebase登录 然后:
  • flutterfire 配置

2
投票

**** 更新**** 我通过这一步解决了错误:

1 - 重新连接到网络

2 - 运行

dart pub global activate flutterfire_cli

3-运行

flutterfire configure

请参阅帮助您入门的文档 将 Firebase 添加到 Flutter 应用程序

希望这对你有帮助

同样的错误,我在另一个项目中使用了 firebase,但在这个项目中它给了我这个

        Unhandled exception:

    FormatException: Unexpected character (at line 5, character 1)

    {

    ^

    

    #0      _ChunkedJsonParser.fail (dart:convert-patch/convert_patch.dart:1383:5)

    #1      _ChunkedJsonParser.parse (dart:convert-patch/convert_patch.dart:848:48)

    #2      _parseJson (dart:convert-patch/convert_patch.dart:35:10)

    #3      JsonDecoder.convert (dart:convert/json.dart:612:36)

    #4      runFirebaseCommand (package:flutterfire_cli/src/firebase.dart:95:25)

    <asynchronous suspension>

    #5      getApps (package:flutterfire_cli/src/firebase.dart:162:20)

    <asynchronous suspension>

    #6      findOrCreateFirebaseApp (package:flutterfire_cli/src/firebase.dart:257:34)

    <asynchronous suspension>

    #7      FirebaseAndroidOptions.forFlutterApp (package:flutterfire_cli/src/firebase/firebase_android_options.dart:47:25)

    <asynchronous suspension>

    #8      ConfigCommand.run (package:flutterfire_cli/src/commands/config.dart:377:24)

    <asynchronous suspension>

    #9      CommandRunner.runCommand (package:args/command_runner.dart:209:13)

    <asynchronous suspension>

    #10     main (file:///home/abdalazeez/.pub-cache/hosted/pub.dartlang.org/flutterfire_cli-0.2.4/bin/flutterfire.dart:57:5)

    <asynchronous suspension>

和这个内容文件

         try {

       final flutterApp = await FlutterApp.load(Directory.current);

       await FlutterFireCommandRunner(flutterApp).run(arguments);  <=====the error happen here

     } on FlutterFireException catch (err) {

       if (utils.activeSpinnerState != null) {

         try {

           utils.activeSpinnerState!.done();

         } catch (_) {}

       }

       stderr.writeln(err.toString());

       exitCode = 1;

     } catch (err) {

       exitCode = 1;

       rethrow;

     }

    

2
投票

以下步骤帮助了我:

  • 更新 firebase cli

    curl -sL firebase.tools |升级=真正的bash

  • 致电

    firebase 登录 --reauth

参考: https://github.com/invertase/flutterfire_cli/issues/27


1
投票

我也遇到过同样的问题。我尝试了 Firebase CLI 的独立二进制版本。我尝试了多种方法来解决这个问题,例如,

  • 将“firebase-tools-instance.exe”的名称更改为“firebase.exe”
  • 将 firebase.exe 放在我的 Flutter 项目的根文件夹中

但他们从来没有为我工作过。

然后我使用 npm 安装 Firebase CLI。

这些是我遵循的步骤。

  1. 我将 NodeJs 更新到最新版本。

  2. 我输入以下内容来安装 Firebase CLI。

    npm install -g firebase-tools
    
  3. 在命令提示符下输入

    firebase login
    检查是否安装成功。

  4. 使用

    dart pub global activate flutterfire_cli
    命令激活 Flutterfire CLI。

  5. 进入项目根文件夹。

  6. 输入

    flutterfire configure
    在中注册应用程序 项目。

成功将lib/firebase_options.dart配置文件添加到我的Flutter项目中。


0
投票

尝试在 Windows 上使用独立二进制文件而不是 NPM 安装 Firebase CLI,或在 Mac 上使用安装脚本。


0
投票

下载并安装 Node.js 设置对我来说很有效, 安装后,搜索node.js终端,然后运行“firebase登录”,登录成功后,然后运行“dart pub global activate flutterfire_cli”,成功获取flutterfire cli后,然后导航到您创建的flutter应用程序的文件夹正在使用 cd(更改目录) 导航到该目录后,然后运行“flutterfire configure” 这将在您的 flutter 应用程序项目中创建一个 firebase 项目。完成


0
投票

安装最新版本的 npm,然后运行 flutter fire 命令。 示例:从任何目录运行: npm install -g npm@latest version => npm install -g [电子邮件受保护] 截至目前,npm 的最新版本是 9.2.0


0
投票
  • 删除 C:\Users\USERNAME.cache irebase 文件夹
  • 首先尝试独立二进制文件,然后尝试 nvm 后,重新运行 flutterfire 配置对我有用。

0
投票

对于 Linux 和 Mac 更新 npm 包


0
投票

我刚刚遇到了同样的错误,我通过使用 firebase login --reauth 重新验证 firebase 帐户来修复此问题,然后再次重新运行此命令 dart pub global activate flutterfire_cli

© www.soinside.com 2019 - 2024. All rights reserved.