有没有办法检查用户是否是颤振火基地的新用户(Facebook用户)



我正在寻找一种方法来检查用户是刚刚注册还是刚刚登录,并且没有明显的方法可以使用Firebase并使用facebook身份验证<</p>

div class="one_answers"来做到这一点

> 我发现的最好的方法是比较用户元数据中的lastSignInTimestampcreationTimestamp。如果它们相同或彼此接近,则这可能是用户的首次登录。

AuthResultAdditionalUserInfo,它有isNewUser布尔值,它给你这些信息。

  • https://pub.dev/documentation/firebase_auth/latest/firebase_auth/AuthResult-class.html
  • https://pub.dev/documentation/firebase_auth/latest/firebase_auth/AdditionalUserInfo-class.html

你应该使用这里找到的 FlutterFire 插件。

具体而言,身份验证包将帮助您管理以下内容:https://github.com/flutter/plugins/tree/master/packages/firebase_auth

这段代码将让你知道是否有当前用户。 类似的东西。

final FirebaseAuth _auth = FirebaseAuth.instance;
final FirebaseUser currentUser = await _auth.currentUser();
if (user != null) {
    _message = 'Successfully signed in, uid: ' + user.uid;
} else {
    _message = 'Sign in failed';
}

使用 Facebook/Firestore 进行特定凭据身份验证:https://github.com/flutter/plugins/blob/master/packages/firebase_auth/lib/src/auth_provider/facebook_auth_provider.dart

您还需要导入Facebook SDK并在那里传递凭据。Firebase 登录/注册调用会处理其余部分,然后传回一个 Firebase 用户,然后您可以根据需要使用该用户来存储您自己的用户类型(这似乎是您正在寻找的(。

相关内容

最新更新