如何从Firestore中的集合中获取String数组中的所有文档(包括数据)?

时间:2019-05-25 11:25:39

标签: java android firebase google-cloud-firestore

我想获取字符串itemName中所有文档的全部array, 此外,我想在该阵列上执行搜索,如何完成任务?请帮我。谢谢。

https://i.stack.imgur.com/ge5x2.png

1 个答案:

答案 0 :(得分:0)

  

我想获取字符串数组中所有文档的所有itemName

要获取所有文档中的所有项目名称,您需要创建引用并使用get()调用,如以下代码行所示:

FirebaseFirestore rootRef = FirebaseFirestore.getInstance();
CollectionReference offersDataRef = rootRef.collection("MartWayDB").document("Offers")
    .collection("OffersData");
offersDataRef.get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
    @Override
    public void onComplete(@NonNull Task<QuerySnapshot> task) {
        if (task.isSuccessful()) {
            String[] array = new String[task.getResult().size()];
            int count = 0;
            for (QueryDocumentSnapshot document : task.getResult()) {
                String itemName = document.getString("itemName");
                array[count] = itemName;
                Log.d(TAG, itemName);
                count++;
            }

            //Do what you need to do with your array
        }
    }
});