Ни одно приложение Firebase «[ПО УМОЛЧАНИЮ]» не было создано — даже когда Firebase.Вызывается InitializeApp(), ошибка сохраняется

#firebase #flutter #web #flutter-web

#огневая база #трепетание #паутина #флаттер-паутина

Вопрос:

Я надеюсь, что кто-нибудь сможет помочь мне с этой проблемой, я перепробовал все приведенные выше примеры, однако та же ошибка все еще отображается

Не перехвачено (в обещании) Ошибка Firebase: Firebase: приложение Firebase «[ПО УМОЛЧАНИЮ]» не создано — вызовите Firebase App.initializeApp() (приложение / no-app).

в Object.f [как приложение] (https://www.gstatic.com/firebasejs/8.2.1/firebase-app.js:1:16867 )

это мой начальный код main.dart

 void main() async {

WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  developer.log('${Firebase.apps.length}', name: 'main.dart');
  FlutterError.onError = (FlutterErrorDetails details) {
    FlutterError.dumpErrorToConsole(details);
  };
  runApp(App());
}

class App extends StatefulWidget {
  _AppState createState() => _AppState();
}

class _AppState extends State<App> {
  
  @override
  Widget build(BuildContext context) {
    if(Firebase.apps.length == 0){
      return Loading();
    }
    else
    return StreamProvider<UserData>.value(
      value: AuthService().user,
      child: MaterialApp(
        title: MAIN_TITLE,
        debugShowCheckedModeBanner: false,
        theme: ThemeData(primarySwatch: Colors.amber, accentColor: Colors.amber[200]),
        home: MyHomePage(
          title: HOME_PAGE,
        ),
        routes: <String, WidgetBuilder>{
          '/home': (BuildContext context) => new Wrapper(),
        },
      ),
    );
  }
}
 

Это мой index.html файл

 <!DOCTYPE html>
<html>
  <head>
    <base href="/" />

    <meta charset="UTF-8" />
    <meta content="IE=Edge" http-equiv="X-UA-Compatible" />
    <meta name="description" content="A new Flutter project." />

    <!-- iOS meta tags amp; icons -->
    <meta name="apple-mobile-web-app-capable" content="yes" />
    <meta name="apple-mobile-web-app-status-bar-style" content="black" />
    <meta name="apple-mobile-web-app-title" content="web_product_unitrade" />
    <link rel="apple-touch-icon" href="icons/Icon-192.png" />

    <!-- Favicon -->
    <link rel="icon" type="image/png" href="favicon.png" />

    <title>web_product_unitrade</title>
    <link rel="manifest" href="manifest.json" />
       
  </head>
  <body>
    <p id="error-element"></p>
    <script src="https://www.gstatic.com/firebasejs/8.2.1/firebase-app.js"></script>
    <script src="https://www.gstatic.com/firebasejs/7.8.0/firebase-auth.js"></script>
     
    <script type="module">
      import { firebaseConfig} from '/lib/configuration/firebase-config.js';
      // Initialize Firebase
      firebase.initializeApp(firebaseConfig);
      firebase.analytics();
    </script>
    <script src="https://www.gstatic.com/firebasejs/8.2.1/firebase-analytics.js"></script>
    <script src="https://www.gstatic.com/firebasejs/7.17.1/firebase-firestore.js"></script>
    <script src="https://www.gstatic.com/firebasejs/8.2.1/firebase-storage.js"></script>

    <script>
      if ("serviceWorker" in navigator) {
        window.addEventListener("flutter-first-frame", function () {
          navigator.serviceWorker.register("flutter_service_worker.js");
        });
      }
    </script>
    <script src="main.dart.js" type="application/javascript"></script>
  </body>
</html>
 

При запуске приложение выполняется локально должным образом, однако при запуске в режиме выпуска генерируется следующая ошибка.

 zone.dart:1171 Uncaught FirebaseError: Firebase: No Firebase App '[DEFAULT]' has been created - call Firebase App.initializeApp() (app/no-app).
    at Object.f [as app] (https://www.gstatic.com/firebasejs/8.2.1/firebase-app.js:1:16867)
    at Object.afQ (http://localhost:52254/main.dart.js:9835:63)
    at Object.ald (http://localhost:52254/main.dart.js:8221:29)
    at http://localhost:52254/main.dart.js:14458:5
    at afM.a (http://localhost:52254/main.dart.js:4531:71)
    at afM.$2 (http://localhost:52254/main.dart.js:29996:23)
    at Object.L (http://localhost:52254/main.dart.js:4517:19)
    at Object.P9 (http://localhost:52254/main.dart.js:14482:10)
    at http://localhost:52254/main.dart.js:71366:8
    at http://localhost:52254/main.dart.js:71361:55
 

Комментарии:

1. С помощью Flutter web, если вы обновите index.html , возможно, вам потребуется закрыть все приложение и запустить «flutter clean», а затем «flutter packages get»…. Еще одно предложение, попробуйте изменить firebasejs/8.2.1/firebase-app.js на firebasejs/7.20.0/firebase-app.js , потому что это то, что показано во введении к Flutter Web на веб-сайте Flutter Fire

2. @Uni не могли бы вы указать, какой файл json отсутствует??

3. @osaxma Я изменил firebase-app.js пакет, но все равно он показывает ту же ошибку. Я попробовал очистить flutter, а затем запустить flutter, ошибка сохраняется

Ответ №1:

Вы можете следовать руководству firebase здесь.
также обязательно проверьте, используете ли вы Google-сервисы.файл json добавляется в приложение для Android, а GoogleService-Info.plist добавляется в приложение для iOS.

Комментарии:

1. Да, я следовал инструкциям по созданию веб-приложения с использованием flutter.