有什么方法可以检查用户是否是flutter firebase的新用户(Facebook用户)?

时间:2019-07-27 23:20:18

标签: android firebase flutter firebase-authentication

我正在寻找一种方法来检查用户是否刚刚注册或刚刚登录,并且没有明显的方法可以使用firebase并通过Facebook身份验证来实现

3 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

您应该使用在here找到的FlutterFire插件。

具体来说,身份验证包将帮助您管理此问题: https://github.com/flutter/plugins/tree/master/packages/firebase_auth

这段代码将使您知道是否存在currentUser。遵循这些原则。

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用户,然后,如果需要,您可以使用该用户存储自己的用户类型(看起来像您要找的用户)。

答案 2 :(得分:0)

我发现最好的是比较user's metadata中的lastSignInTimestampcreationTimestamp。如果它们相同或彼此接近,则可能是用户首次登录。