突然,这种行为开始发生而没有进行任何更改。基本上,我可以匿名创建用户,甚至可以使用电子邮件/密码创建用户。我没有任何错误,实际上我能够检索到userID。但是,当我在控制台中转到“用户”列表时,它始终为空。
Auth.auth().signInAnonymously() { user, error in
self.ifNoError(error) {
print("Signed In Anonymously \(user?.user.uid)")
}
}
结果:
匿名登录可选(“ qQazZ3MX8LfQdnlz8F27QDxAT9U2”)
提前谢谢
答案 0 :(得分:0)
我设法通过创建手动用户电子邮件/密码(手动在控制台上),通过代码登录并通过彻底的代码删除来解决此问题。然后更改代码以再次匿名登录。这样就解决了问题!
答案 1 :(得分:0)
您在上线之前还是从Firebase控制台删除过匿名用户吗?那就是我所做的,即使没有意识到Firebase仍可以使该用户在您的设备上存活……即使您从设备中删除该应用程序并重新安装。此外,除非您强制在给定设备上注销,否则它仍将作为可接受的匿名用户(即使已从控制台中删除)仍然起作用。 (糟糕,TL; DR)。试试这个。
在您的应用程序委托中注销用户
FIRAuth *auth = [FIRAuth auth];
NSError *error;
[auth signOut:&error];
创建另一个匿名用户
[auth signInAnonymouslyWithCompletion:^(FIRAuthDataResult * _Nullable authResult, NSError * _Nullable error) {
NSLog(@"Error is %@", error);
NSLog(@"Auth result user id is %@", authResult.user.uid);
}];
就我而言,我的设备现在显示了一个新用户UUID,并且该用户显示在Firebase控制台中。
有趣的事实:Android似乎没有出现此问题。当我从设备上删除该应用程序并重新安装后,我的Android应用程序(共享相同的生产Firestore)愉快地创建了一个新用户。