问题描述
我最近开始时是用窗户颤动的。我正在关注this Firebase和Flutter教程。在第4课中,我遇到了Firebase Auth错误:
Flutter:MissingPluginException(在通道plugins.Flutter.io/firebase_auth上未找到方法signInAnonymous的实现)
我认为问题是因为我正在为Windows构建。我不知道如何将Firebase添加到Windows应用程序。感谢您的帮助
这是完整的日志:
Launching lib\main.dart on Windows in debug mode...
Building Windows application...
Waiting for Windows to report its views...
Debug service listening on ws://127.0.0.1:60688/97Ok8iT1Hjo=/ws
Syncing files to device Windows...
Flutter: MissingPluginException(No implementation found for method signInAnonymously on channel plugins.Flutter.io/firebase_auth)
Flutter: error signing in
编辑1
pubspec.yaml文件(“依赖关系”部分)
dependencies:
Flutter:
sdk: Flutter
firebase_auth: ^0.14.0+5
cloud_firestore: ^0.12.9+4
编辑2
我更新了依赖项以使用以下版本:
firebase_auth: ^0.18.1+2
cloud_firestore: ^0.14.1+3
firebase_core: ^0.5.0+1
但是现在我遇到以下错误:
[ERROR:Flutter/lib/ui/ui_dart_state.cc(177)] Unhandled Exception: MissingPluginException(No implementation found for method Firebase#initializeCore on channel plugins.Flutter.io/firebase_core)
这是我的主要功能:
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
runApp(MyApp());
}
解决方法
如果您在 android 上运行应用程序并且您的 MainActivity
具有以下导入语句:
import io.flutter.app.FlutterActivity
您可能需要将其更改为:
import io.flutter.embedding.android.FlutterActivity
,
在 void main() 函数中添加 await Firebase.initializeApp();
后,您只是在热重新加载或热重启您的颤振。
只需停止您的 main.dart 进程并从头开始再次运行它——就是这样,现在您的应用已与 Firebase 集成!
注意:在运行过程中,有些人可能会遇到 Multidex 错误 的问题,请参阅链接:D8: Cannot fit requested classes in a single dex file (# methods: 71610 > 65536) 解决错误或只需添加:
在您的项目级别>> android >> app >> build.gradle :
defaultConfig {
...
multiDexEnabled true
}
,但是现在我遇到以下错误:
[ERROR:flutter / lib / ui / ui_dart_state.cc(177)]未处理的异常:MissingPluginException(在通道plugins.flutter.io/firebase_core上未找到方法Firebase#initializeCore的实现)
如here中所述,您需要在com.android.tools.build:gradle:3.5.0
的依赖项中设置android/build.gradle
。
dependencies {
classpath 'com.android.tools.build:gradle:3.5.0'
// ...
}