У меня проблема с Firebase Auth во флаттере, точнее с запросом user.displayName
.Я использую обязательный вход в Google на первом экране своего приложения, поэтому могу гарантировать, что на всех последующих экранах у пользователя есть имя и идентификатор пользователя, связанные с ним.
Однако каждый раз, когда я хочу получить доступ к имени пользователя, все, что я сейчас делаю, по сути снова аутентифицирует пользователя с помощью:
GoogleSignInAccount googleUser = await googleSignIn.signInSilently();
GoogleSignInAuthentication googleAuth = await googleUser.authentication;
FirebaseUser user = await auth.signInWithGoogle(
accessToken: googleAuth.accessToken,
idToken: googleAuth.idToken,
);
futureId = user.uid;
print("signed in " + user.displayName);
return user.displayName;
, что, очевидно, занимает ненужное время и пропускную способность.
Есть ли другой способ сделать это, так как пользователь уже входил в систему раньше?Могу ли я получить доступ к пользовательским данным, которые сохраняются Firebase Auth для использования в других продуктах Firebase (например, Firestore)?