我正在尝试在Firestore的一个文档中获取每个字段。字段的键是随机数,值与键相同。如何使用文档?
DocumentReference docRef = db.collection("cities").document("SF");
docRef.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
@Override
public void onComplete(@NonNull Task<DocumentSnapshot> task) {
if (task.isSuccessful()) {
DocumentSnapshot document = task.getResult();
if (document.exists()) {
Log.d(TAG, "DocumentSnapshot data: " + document.getData());
// get every field in document.getData();
}
}
}
});
答案 0 :(得分:2)
document.getData()
返回一个Map<String, Object>
以及文档中的所有字段,正如您从the API documentation中看到的那样。您以与iterate all the entries in a Map相同的方式迭代所有字段。
for (Map.Entry<String, Object> entry : map.entrySet()) {
// entry.getKey() will contain the name of the field with each iteration.
}