小编Ank*_*ath的帖子

Java,Firestore - 在 android studio 中使用文档 id 的数组列表从 firestore 获取多个文档

我有一个 ArrayList,其中包含我想要获取的所有 id。有没有办法可以使用列表获取多个文档及其字段值。另外,如果我必须手动创建一个 for 循环来获取每个文档,我该怎么做?

Firestore数据结构:

Users:
  user1:
     field1 :
     field2 :
     field3 :
     field4 :
  user2:
     field1 :
     field2 :
     field3 :
     field4 :
  user3:
     field1 :
     field2 :
     field3 :
     field4 :
Run Code Online (Sandbox Code Playgroud)

该列表包含:user1、user2、user3 等等...

编辑1:我尝试使用for循环来获取它,但它给出了一个空指针异常FriendsData.add(userDetails);

 for (String doc : list_of_Friends) {
                    FirebaseFirestore.getInstance().collection("Users").document(doc).get()
                            .addOnSuccessListener(new OnSuccessListener<DocumentSnapshot>() {
                                @Override
                                public void onSuccess(DocumentSnapshot documentSnapshot) {
                                    FamilyMember userDetails = documentSnapshot.toObject(FamilyMember.class);
                                    FriendsData.add(userDetails);
                                }
                            });
Run Code Online (Sandbox Code Playgroud)

编辑2:

循环的另一个逻辑也给出了相同的错误。当我登录时,我可以看到doc&都ds.getId()在获取值

FirebaseFirestore.getInstance().collection("Users").get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
                        @Override
                        public void onComplete(@NonNull Task<QuerySnapshot> task) {
                            if(task.isSuccessful())
                            for (DocumentSnapshot …
Run Code Online (Sandbox Code Playgroud)

java android firebase google-cloud-firestore

1
推荐指数
1
解决办法
847
查看次数

标签 统计

android ×1

firebase ×1

google-cloud-firestore ×1

java ×1