【发布时间】:2020-05-18 14:31:40
【问题描述】:
查看代码:
private void initFirebase() {
try {
for (int i = 1; i < 16; i++) {
mDatabase.collection(POST_ID).document("1").collection(PREVIEW)
.get()
.addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
if (task.isSuccessful()) {
for (QueryDocumentSnapshot document : task.getResult()) {
postMap.putAll(document.getData());
}
if (postMap != null) {
Post post = new Post();
post.setTitle(Objects.requireNonNull(postMap.get(POST_NAME)).toString());
post.setDesc(Objects.requireNonNull(postMap.get(POST_DESC)).toString());
post.setUrl(Objects.requireNonNull(postMap.get(POST_URL)).toString());
postList.add(post);
}
setAdapter();
} else {
showLog("Error getting documents: " + task.getException());
}
}
});
}
} catch (Exception e) {
e.printStackTrace();
}
}
而不是 for (int i = 1; i < 16; i++) { 16 我想要我的 Firestore 集合中存在的大小。我尝试了所有建议,但没有mDatabase.collection(POST_ID).size()
数据库结构:
Firestore-root
|
--- PostId (collecton)
|
---
我想要 postId 集合的大小。
【问题讨论】:
-
你为什么要循环播放?您从未在代码中使用过变量
i。 -
@OhhhThatVarun 我会在这里循环“i”:mDatabase.collection(POST_ID).document("1")
-
你的意思是
mDatabase.collection(POST_ID).document(i)?? -
@OhhhThatVarun 正确
-
您想要这样做是因为您需要数据库中的所有文档吗?
标签: android google-cloud-firestore