如何在颤动中处理 Firebase Auth 未处理的异常? [复制]
Posted
技术标签:
【中文标题】如何在颤动中处理 Firebase Auth 未处理的异常? [复制]【英文标题】:How to handle a Firebase Auth unhandled exception in flutter? [duplicate] 【发布时间】:2019-07-25 19:12:16 【问题描述】:当我的应用程序的用户在他们已经注册了谷歌的情况下尝试注册 Facebook 时,Flutter 从控制台给出了这个错误。我将如何处理我的代码中的这个错误?我假设输出的exception
部分是错误代码?
Unhandled Exception: PlatformException(exception, An account already exists with the same email address but different sign-in credentials. Sign in using a provider associated with this email address., null)
E/flutter ( 5581): #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:564:7)
这是我的代码:
void loginWithFb() async
var auth = AuthProvider.of(context).auth;
print('Signing up with fb...');
setState(()
_showProgressIndicator = true;
);
FirebaseUser user = await auth.signInWithFBAcc();
uId = user?.uid;
if(uId != null)
print('Signed in: $uId');
widget.onSignedIn(user);
else
print('fb login cancelled');
// _showAlert(context);
setState(()
_showProgressIndicator = false;
);
【问题讨论】:
使用.catchError((e)print(e);)
谢谢,我可以将它与异步函数一起使用吗?
是的,你可以这样做。
【参考方案1】:
Future<String> signUp(String email, String password) async
try
FirebaseUser user = await _firebaseAuth.createUserWithEmailAndPassword(
email: email,
password: password,
);
return user.uid;
on PlatformException catch (e)
print(e.toString());
return e.code;
【讨论】:
发布代码很棒,但如果您可以在答案中添加解释,这将有助于进一步的观众了解正在发生的事情。以上是关于如何在颤动中处理 Firebase Auth 未处理的异常? [复制]的主要内容,如果未能解决你的问题,请参考以下文章