问题描述
该应用程序运行,但是当单击“注册”按钮时,我无法继续转到下一个路由页面。如从console.firebase所看到的,该帐户确实已创建,并且转到下一页的唯一方法是使用创建的凭据再次登录。
import 'package:firebase_auth/firebase_auth.dart';
import 'package:firebase_core/firebase_core.dart';
class AuthService {
final FirebaseAuth _firebaseAuth = FirebaseAuth.instance;
Stream<String> get authStateChanges => _firebaseAuth.authStateChanges().map(
(User user) => user?.uid,);
// // GET UID
// Future<String> getCurrentUID() async {
// return (await _firebaseAuth.currentUser()).uid;
// }
// Email & Password Sign Up
Future<String> createuserWithEmailAndPassword(
String email,String password,String name) async {
final authResult = await _firebaseAuth.createuserWithEmailAndPassword(
email: email,password: password,);
// Update the username
await updateUserName(name,authResult.user);
return authResult.user.uid;
}
Future updateUserName(String name,User currentUser) async {
var userUpdateInfo = updateProfile();
userUpdateInfo.displayName = name;
await currentUser.updateProfile(displayName: userUpdateInfo);
await currentUser.reload();
}
// Email & Password Sign In
Future<String> signInWithEmailAndPassword(
String email,String password) async {
return (await _firebaseAuth.signInWithEmailAndPassword(
email: email,password: password))
.user
.uid;
}
// Sign Out
signOut() {
return _firebaseAuth.signOut();
}
}
updateProfile() {
}
解决方法
在 updateUserName 方法中,将执行以下代码,因此请尝试注释或删除它。
// Sign Out
signOut() {
return _firebaseAuth.signOut();
}