【问题标题】:Android firestore Retrieve Data mapAndroid firestore 检索数据地图
【发布时间】:2020-09-05 04:49:41
【问题描述】:

如何检索嵌套对象中的数据?我能够获取文档中的所有数据但无法检索嵌套对象,只想将 usr_card-card1,card2 下的所有数据检索到数组或映射中

userid = FirebaseAuth.getInstance().getCurrentUser().getUid();
                fStore = FirebaseFirestore.getInstance();

                DocumentReference documentReference = fStore.collection("users").document(userid);
                documentReference.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
                    @Override
                    public void onComplete(@NonNull Task<DocumentSnapshot> task) {
                        if (task.isSuccessful()) {
                            DocumentSnapshot document = task.getResult();
                            if (document.exists()) {
                                String usr_name = "usr_name",usr_email="usr_email";
                                String name = document.getString(usr_name);
                                String email = document.getString(usr_email);

                                Log.d(TAG, "DocumentSnapshot data: " + document.getData());
                            } else {
                                Log.d(TAG, "No such document");
                            }
                        } else {
                            Log.d(TAG, "get failed with ", task.getException());
                        }
                    }
                });

【问题讨论】:

  • 请编辑问题以更具体地说明您的具体目标是什么,以及哪些方面没有按照您的预期工作。您在此处显示的文档中有多个字段和对象 - 您需要什么?
  • 你的用户对象有 POJO 类吗?基本上是一个包含所有这些字段的类?请回复@AlexMamo
  • @AlexMamo 不,我没有创建它
  • 如果您打算这样做,这篇文章 How to map an array of objects from Cloud Firestore to a List of objects? 将帮助您解决这个问题。

标签: android google-cloud-firestore


【解决方案1】:

Firestore 文档中的地图类型字段在 Java 中显示为地图类型对象。

Map<String, Object> usr_card = (Map<String, Object) document.get("usr_card");

您可以像使用任何其他地图一样使用返回的地图。

【讨论】:

  • Map usr_card = (Map
  • 例如:将card1和card 2“card_num”放入数组或map中
猜你喜欢
  • 2020-11-21
  • 1970-01-01
  • 2020-08-08
  • 2018-11-06
  • 2021-07-03
  • 2022-01-12
  • 1970-01-01
  • 1970-01-01
  • 2023-03-09
相关资源
最近更新 更多