首页 > 解决方案 > 颤振:firebase_auth 示例仅适用于 android,并且在 iOS 上出现错误(异常)

问题描述

https://github.com/FirebaseExtended/flutterfire/tree/master/packages/firebase_auth/firebase_auth/example/lib

一个月前,当我创建了一个新的 Flutter 项目,在 firebase 中注册,并按原样运行上述页面上的示例时,我能够注册并登录 iOS 模拟器和 android 模拟器。

今天再次运行应用程序时,在iOS上出现异常,即使我在用户注册屏幕上输入电子邮件/密码并按下提交按钮,屏幕显示也完全没有变化。情况是用户注册尚未完成。

使用安卓模拟器,可以顺利完成用户注册和登录。当然,我已经在 Firebase 控制台中将“电子邮件/密码”方法设置为“启用”。异常消息如下所示。

Launching lib/main.dart on iPhone SE (2nd generation) in debug mode... Running Xcode build... Xcode build done.                              
31.0s Debug service listening on ws://127.0.0.1:64975/Xcy6RyGWDS0=/ws Syncing files to device iPhone SE (2nd generation)... ), error=(null) on <SOConfigurationClient: 0x600000bfa800> } [VERBOSE-2:ui_dart_state.cc(157)] Unhandled Exception: PlatformException(ERROR_OPERATION_NOT_ALLOWED, The given sign-in provider is disabled for this Firebase project. Enable it in the Firebase console, under the sign-in method tab of the Auth section., null)
#0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569:7)
#1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:156:18) <asynchronous suspension>
#2      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:329:12)
#3      MethodChannel.invokeMapMethod (package:flutter/src/services/platform_channel.dart:356:48)
#4      MethodChannelFirebaseAuth.createUserWithEmailAndPassword (package:firebase_auth_platform_interface/src/method_channel_firebase_auth.dart:64:23)
#5      FirebaseAuth.createUserWithEmailAndPassword (package:firebase_auth/src/firebase_auth.dart:64:10)
#6      RegisterPageState._register (package:myapp101/register_page.dart:89:44)
#7 <…&gt;

可能是什么原因?

2020/6/29,15:30

当我尝试使用“使用谷歌登录”时,它会切换到使用谷歌帐户的登录屏幕,但当我实际执行身份验证过程时,会显示以下异常消息,我无法再次登录。

[VERBOSE-2:ui_dart_state.cc(157)] Unhandled Exception: PlatformException(ERROR_OPERATION_NOT_ALLOWED, The identity provider configuration is disabled., null)
#0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569:7)
#1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:156:18) <asynchronous suspension>
#2      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:329:12)
#3      MethodChannel.invokeMapMethod (package:flutter/src/services/platform_channel.dart:356:48)
#4      MethodChannelFirebaseAuth.signInWithCredential (package:firebase_auth_platform_interface/src/method_channel_firebase_auth.dart:161:23)
#5      FirebaseAuth.signInWithCredential (package:firebase_auth/src/firebase_auth.dart:208:10)
#6      _GoogleSignInSectionState._signInWithGoogle (package:myapp101/signin_page.dart:423:22)
#7      _rootRunUnary (dart:async/zone.dart:1192:38)
#8      _CustomZone.runUnary (dart:async/zone.dart:1085<…&gt;

标签: flutterfirebase-authentication

解决方案


错误消息说:

此 Firebase 项目已停用给定的登录提供程序。在 Firebase 控制台的 Auth 部分的登录方法选项卡下启用它。

因此,您需要转到Firebase 控制台中的身份验证页面,并启用您的代码使用的提供程序。


推荐阅读