我是Flutter开发人员,过去两天我一直在努力让我的应用程序适用于Android。这是一个相当大的应用程序,具有许多不同的功能(主要是谷歌地图和 firebase),可以在 iOS 上完美运行。但是,现在我正在尝试让 Android 部分正常工作,由于某些Firebase问题,我似乎根本无法启动该应用程序。
FlutterFire负责大多数 Firebase 包,他们刚刚发布了一些更新。我花了相当多的时间重构我的项目以符合大多数重大更改。我面临的问题与新更新有关。不幸的是,我遇到的错误并没有让我更接近解决方案。我认为这与无法找到google-services.json的 Android 部分有关。正如我所提到的,在 iOS 上一切正常。所以我的逻辑结论是 Flutter 代码也很好。Google/StackOverflow/FlutterFire 问题似乎都将我误导到对我没有答案的问题。
TL;DR编译到 Android 时,Flutter App 无法启动,因为 Firebase 找不到我的 google-services.json。这是堆栈跟踪:
E/flutter (15568): [ERROR:flutter/lib/ui/ui_dart_state.cc(166)] Unhandled Exception: [core/not-initialized] Firebase has not been correctly initialized. Have you added the "google-services.json" file to the project?
E/flutter (15568):
E/flutter (15568): View the Android Installation documentation for more information: https://firebaseextended.github.io/flutterfire/docs/installation/android
E/flutter (15568):
E/flutter (15568): #0 MethodChannelFirebase.initializeApp (package:firebase_core_platform_interface/src/method_channel/method_channel_firebase.dart:86:9)
E/flutter (15568): <asynchronous …Run Code Online (Sandbox Code Playgroud) android firebase google-play-services flutter flutter-dependencies
目前正在使用 Flutter web 开发一个 Web 应用程序。当我在笔记本电脑或 Android 设备上构建、运行和访问 Firebase 托管应用程序时,工作正常,但是当我尝试在移动 iOS 设备上访问该应用程序时,我会看到空白屏幕。我已经用多种设备对此进行了测试,它们都显示相同的空白页面。为了找到罪魁祸首,我尝试了以下方法:
\nflutter build web --web-renderer canvaskit --releaseflutter clean && find lib -maxdepth 20 -type f \\( -name \\"*.freezed.dart\\" -o -name \\"*.g.dart\\" -o -name \\"*.chopper.dart\\" \\) -delete<base href="/">为<base href="./">我的index.html<meta name="mobile-web-app-capable" content="yes">我的 index.html 中