From ec588f1fea973914fc9b9321200c3d72bce6f86a Mon Sep 17 00:00:00 2001 From: Juan Lara Date: Mon, 1 May 2023 22:49:35 +0000 Subject: [PATCH] sample: get docs from a Firestore subcollection --- .../google/example/firestore/DocSnippets.java | 21 +++++++++++++++++++ .../example/firestore/kotlin/DocSnippets.kt | 17 +++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/firestore/app/src/main/java/com/google/example/firestore/DocSnippets.java b/firestore/app/src/main/java/com/google/example/firestore/DocSnippets.java index 37cf8266a..cde32fdc4 100644 --- a/firestore/app/src/main/java/com/google/example/firestore/DocSnippets.java +++ b/firestore/app/src/main/java/com/google/example/firestore/DocSnippets.java @@ -762,6 +762,27 @@ public void onComplete(@NonNull Task task) { // [END get_multiple_all] } + public void getAllDocsSubcollection() { + // [START firestore_query_subcollection] + db.collection("cities") + .document("SF") + .collection("landmarks") + .get() + .addOnCompleteListener(new OnCompleteListener() { + @Override + public void onComplete(@NonNull Task task) { + if (task.isSuccessful()) { + for (QueryDocumentSnapshot document : task.getResult()) { + Log.d(TAG, document.getId() + " => " + document.getData()); + } + } else { + Log.d(TAG, "Error getting documents: ", task.getException()); + } + } + }); + // [END firestore_query_subcollection] + } + public void listenToMultiple() { // [START listen_multiple] db.collection("cities") diff --git a/firestore/app/src/main/java/com/google/example/firestore/kotlin/DocSnippets.kt b/firestore/app/src/main/java/com/google/example/firestore/kotlin/DocSnippets.kt index ff07b4081..8610215e7 100644 --- a/firestore/app/src/main/java/com/google/example/firestore/kotlin/DocSnippets.kt +++ b/firestore/app/src/main/java/com/google/example/firestore/kotlin/DocSnippets.kt @@ -594,6 +594,23 @@ abstract class DocSnippets(val db: FirebaseFirestore) { // [END get_multiple_all] } + private fun getAllDocsSubcollection() { + // [START firestore_query_subcollection] + db.collection("cities") + .document("SF") + .collection("landmarks") + .get() + .addOnSuccessListener { result -> + for (document in result) { + Log.d(TAG, "${document.id} => ${document.data}") + } + } + .addOnFailureListener { exception -> + Log.d(TAG, "Error getting documents: ", exception) + } + // [END firestore_query_subcollection] + } + private fun listenToMultiple() { // [START listen_multiple] db.collection("cities")