Я получил queryDocumentSnapshot
со следующим кодом:
mFireStore = FirbaseFirestore.getInstance();
mFireStore.collection("myCollection").addSnapshotListener(new EventListener<QuerySnapshot>() {
@Override
public void onEvent(@Nullable QuerySnapshot queryDocumentSnapshots, @Nullable FirebaseFirestoreException e) {
for (DocumentChange doc : queryDocumentSnapshots.getDocumentChanges()) {
if (doc.getType() == DocumentChange.Type.ADDED) {
// Set some data from the doc.getDocument here
mFireStore.collection("myCollection").document(doc.getDocument().getId()).collection("subCollection").get().addOnSuccessListener(new OnSuccessListener<QuerySnapshot>() {
@Override
public void onSuccess(QuerySnapshot queryDocumentSnapshots) {
if (queryDocumentSnapshots.isEmpty()){
// not found
} else{
List<DocumentSnapshot> hosts = queryDocumentSnapshots.getDocuments();
for (int i = 0; i < hosts.size(); i++){
// Each hosts DocumentSnapshot has a "host" field which contains a reference to a document
// I'd like to follow this reference and get that document
}
}
}
});
Моя проблема в том, что как только я получу список хостов DocumentSnapshots
, я бы хотел следовать за их полем "хост", которое содержит ссылку на документ. Я хотел бы перейти по этой ссылке и получить документ на другом конце, но не знаю как. Если вы заметили какие-либо другие проблемы с моей логикой, не стесняйтесь указывать на это, так как я новичок в Cloud Firestore.