Firestore无法显示注册用户数据,仅能查看Firebase认证数据如何解决?
Firebase认证用户存在但Firestore无对应条目问题排查
以下是针对该问题的具体排查步骤:
检查集合名称大小写一致性
Firestore对集合名称大小写敏感,代码中使用的是"Usuarios"(首字母大写),请确认Firebase控制台中对应的集合名称完全一致,若控制台集合名为usuarios(全小写),会导致你看不到写入的数据。验证Firestore安全规则配置
即使客户端日志显示保存成功,若安全规则限制了写入权限,数据会被后台拒绝。请确保规则允许已认证用户写入Usuarios集合,示例规则如下:rules_version = '2'; service cloud.firestore { match /databases/{database}/documents { match /Usuarios/{userId} { allow read, write: if request.auth != null && request.auth.uid == userId; } } }若当前规则为
allow write: if false;,则数据无法写入。确认用户UID获取正确性
在代码中添加日志打印用户UID,验证其与Firebase认证后台的用户UID是否一致,同时排查getCurrentUser()是否返回null(如用户未完成认证就调用保存方法):usuarioID = FirebaseAuth.getInstance().getCurrentUser().getUid(); Log.d("bd_uid", "当前用户UID: " + usuarioID); // 新增日志打印若UID为空,会导致写入的文档ID为空字符串,这类文档在控制台中难以直接找到。
手动刷新Firestore控制台数据
控制台有时不会自动刷新数据,点击右上角的刷新按钮,或重新进入集合页面查看。确认Firebase项目匹配
检查代码连接的Firebase项目与你在控制台查看的是否为同一项目,避免因项目混淆导致看不到数据。
内容的提问来源于stack exchange,提问作者Arlexx Junior
相关产品推荐
相关产品推荐

