У меня есть этот initState на главной странице для проверки аутентификации:
@override
void initState() {
FirebaseAuth.instance.currentUser().then((fire) {
if (fire != null) {
setState(() {
_isAuth = true;
print('^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^6');
print(_isAuth);
print('^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^6');
});
}
});
super.initState();
}
При входе в систему сохраняются данные пользователя, но если пользователь уже аутентифицирует все данные (адрес электронной почты, идентификатор и т. Д.)потерян.
Вход в систему:
Future<FirebaseUser> signIn() async {
GoogleSignInAccount googleSignInAccount = await googleSignIn.signIn();
GoogleSignInAuthentication googleSignInAuthentication =
await googleSignInAccount.authentication;
AuthCredential credential = GoogleAuthProvider.getCredential(
accessToken: googleSignInAuthentication.accessToken,
idWhat is the best way to keep the information?
Token: googleSignInAuthentication.idToken);
final FirebaseUser user = await _auth.signInWithCredential(credential);
print(user.displayName);
_authUser = User(id: user.uid, userEmail: user.email);
notifyListeners();
return user;
}
Каков наилучший способ сохранить данные?