Я новичок в трепетании и Firebase! пытался настроить аутентификацию, но мой логин не работает! пользователь получает доступ к домашнему экрану, когда приложение запускается, и у меня есть две кнопки, с помощью которых можно войти и зарегистрироваться, регистрация работает отлично и перенаправляет пользователей на новый экран, в то время как вход в систему (консоль) говорит, что все хорошо но не перемещается!
Это мой authservice:
class AuthService {
static final _auth = FirebaseAuth.instance;
static final _firestore = Firestore.instance;
static void signUpUser(
BuildContext context, String name, String email, String password) async {
try {
AuthResult authResult = await _auth.createUserWithEmailAndPassword(
email: email,
password: password,
);
FirebaseUser signedInUser = authResult.user;
if (signedInUser != null) {
_firestore.collection('/users').document(signedInUser.uid).setData({
'name': name,
'email': email,
'profileImageUrl': '',
});
Provider.of<UserData>(context, listen: false).currentUserId =
signedInUser.uid;
Navigator.pushNamed(context, HomeScreen.id);
// Navigator.pop(context);
}
} catch (e) {
print(e);
}
}
static void login(String email, String password) async {
try {
await _auth.signInWithEmailAndPassword(email: email, password: password);
} catch (e) {
print(e);
}
}
static void logout() {
_auth.signOut();
}
}
Это кнопка отправки регистрации:
final _formKey = GlobalKey<FormState>();
String _name, _email, _password;
_submit() {
if (_formKey.currentState.validate()) {
_formKey.currentState.save();
AuthService.signUpUser(context, _name, _email, _password);
}
}
И это логин:
_submit() {
if(_formKey.currentState.validate()){
_formKey.currentState.save();
AuthService.login(_email, _password);
}
}