Flutter登录时Firebase用户的电子邮件丢失

问题描述 投票:0回答:1

我正在尝试通过使用flutter_facebook_login通过Firebase auth for Flutter成功登录的用户收集电子邮件。

用户成功登录但该对象没有电子邮件。显示名称很好,Google的类似成功登录具有电子邮件属性。在删除所有旧的facebook登录功能以使用此凭据后尝试升级。

  Future<FirebaseUser> _signInFacebook() async {
      final facebookLoginResult = await globals.facebookSignIn
    .logInWithReadPermissions(['email', 'public_profile']);
  FacebookAccessToken myToken = facebookLoginResult.accessToken;

  AuthCredential credential = 
  FacebookAuthProvider.getCredential(accessToken: myToken.token);

  FirebaseUser firebaseUser = await 
     _auth.signInWithCredential(credential);
  print("signed in " + firebaseUser.email);

  return firebaseUser;
}

编辑:无论首先在Google或Facebook创建哪个帐户,创建的第二个帐户都不会返回firebaseUser.email。它可以通过firebaseUser.providers[0].email获得,但在整个应用程序中似乎无法使用。

dart flutter firebase-authentication facebook-login
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.