java - 为什么 Firestore DocumentSnapshot 数据大小始终为零?
问题描述
我有一个 Firestore 数据库,我试图通过 Android API 查询一些用户信息,但它似乎没有返回结果。
我的数据库的结构如下所示:
/users/test_user/test_sub_collection/randomDocId
(主集合 -> 文档 -> 子集合 -> 文档)
这是Java代码:
FirebaseFirestore.getInstance()
.collection("users")
.document("test_user")
.collection("test_sub_collection")
.get()
.addOnCompleteListener(task -> {
if (task.isSuccessful()) {
List<DocumentSnapshot> documents = task.getResult().getDocuments();
for (DocumentSnapshot doc: documents) {
if (doc.exists()) {
// And here lies the problem. The getData size is always zero,
// doesn't matter how many fields and subcollections
// I keep adding to the randomDocId.
doc.getData();
}
}
}
});
所以总而言之,doc.getData().size()
总是返回 0,即使doc.getId()
返回正确的 id (randomDocId)。randomDocId 也有一个字段和子集合。
老实说,我不知道我做错了什么。
解决方案
推荐阅读
- regex - Filesmatch 在 .htaccess 文件中不起作用
- android - Android Coroutines 阻止 UI 点击监听器
- python - 使用 mayavi 绘制 3D 场景时出现意外行为
- java - java中的电子邮件验证,删除@localhost.com,user@9.8.7.6之类的电子邮件
- node.js - 如何正确地将更改推送到 Heroku
- linux - 如何使用 bash 脚本监控 CPU 使用率并随着时间的推移而上升?
- python - 在 python 中创建 json 对象的替代方法是什么?
- sql - 我想使用 SQL SERVER 在 SQL 中获取 while 循环的最终结果(参考代码)
- c - 如何在 Windows 中打印 \n?
- mongodb - 编辑 mongo.conf 后 MongoDB 状态失败(代码退出,状态 = 2)