Firestore获取文档中随机命名的每个字段

时间:2018-12-24 11:42:28

标签: android google-cloud-firestore

我正在尝试在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();
        }
    } 
}
});

1 个答案:

答案 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.
}