首页 > 解决方案 > 如何从 Firestore 的集合中获取字符串数组中的所有文档(包括数据)?

问题描述

我想itemName在 String 中获取所有文档array,进一步我想对该数组执行搜索,我怎样才能完成我的任务?请帮我。谢谢。

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

标签: javaandroidfirebasegoogle-cloud-firestore

解决方案


我想在字符串数组中获取所有文档的所有 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
        }
    }
});

推荐阅读