[英]How to get query data using Firebase Firestore?
Query query = mTournamentColRef.whereEqualTo("author", user.getUid());
我想在mTournamentColRef
获取文档的 ID,但在Firebase 文档中找不到任何关于如何处理查询以及如何获取其数据的内容。
感谢您的帮助!
您可以使用数据快照从查询中获取数据,或者如果您使用 Firestore Recycler Adapter,您可以直接将查询传递给构造函数。 这是获取特定数据的代码:-
Query query = mTournamentColRef.whereEqualTo("author", user.getUid());
query.addSnapshotListener(new EventListener<QuerySnapshot>() {
@Override
public void onEvent(QuerySnapshot queryDocumentSnapshots, FirebaseFirestoreException e)
{
for (DocumentSnapshot doc : queryDocumentSnapshots)
{
Tournament tp = doc.toObject(Tournament.class);
}
}
});
如何使用firebase firestore获取查询数据?
简单地说,使用get()
调用!
query.get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
if (task.isSuccessful()) {
for (QueryDocumentSnapshot document : task.getResult()) {
Log.d("TAG", "Document Id: " + document.getId());
}
}
}
});
除非需要实时获取数据,否则无需使用addSnapshotListener
。 如果您只需要获取它而不监听更改,只需使用get()
方法。
你可以通过 dicumentsnapshot.getId() 获得我想要的文件
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.