【发布时间】:2020-04-09 13:23:31
【问题描述】:
我想使用 Firebase 检查用户是否是新用户。我有一个使用 google 登录的按钮
Future<FirebaseUser> googleSignIn() async {
try {
loading.add(true);
GoogleSignInAccount googleSignInAccount = await _googleSignIn.signIn();
GoogleSignInAuthentication googleAuth =
await googleSignInAccount.authentication;
final AuthCredential credential = GoogleAuthProvider.getCredential(
accessToken: googleAuth.accessToken,
idToken: googleAuth.idToken,
);
FirebaseUser user = (await _auth.signInWithCredential(credential)).user;
loading.add(false);
return user;
} catch (error) {
return error;
}
}
如果我添加 FirebaseUserMetadata,我有:“Future”类型的值不能分配给“FirebaseUserMetadata”类型的变量。尝试更改变量的类型,或将右侧类型转换为“FirebaseUserMetadata”。
我认为我要做的是比较 FirebaseUserMetadata 中的 lastSignInTimestamp 和 creationTimestamp。
FirebaseUser user = (await _auth.signInWithCredential(credential)).user;
if(new user){
updateDataNewUser(...)
}
else{
updateDataUser(...)
}
在我的情况下,如何从 FirebaseUserMetadata 获取这些数据?
谢谢。
【问题讨论】:
-
是的,它正在工作,谢谢
标签: android firebase flutter dart