如何在Android中从CloudFireStore获取集合中的对象列表?

如何在Android中从CloudFireStore获取集合中的对象列表?,android,firebase,kotlin,google-cloud-firestore,Android,Firebase,Kotlin,Google Cloud Firestore,如何获取“listTask” 我已尝试使用以下代码记录“document.data[“listTask”]”: db.collection("project").get() .addOnSuccessListener { result -> Log.d(TAG, "onRefresh: loadProject") for (document in result){ if (document.da

如何获取“listTask”

我已尝试使用以下代码记录“document.data[“listTask”]”:

db.collection("project").get()
        .addOnSuccessListener { result ->
            Log.d(TAG, "onRefresh: loadProject")
            for (document in result){
                if (document.data["owner_id"]== id){
                    counter++
                    Log.d(TAG, "inside response: ${document.data["listTask"]}")
                }
            }

        }
这是日志结果

D/YourProjectFragment: inside response: [{id=29356, title=Database, status=false}, {id=28581, title=UI UX, status=false}, {id=66044, title=Architecture Design, status=false}, {id=77830, title=Functional Test, status=false}]
我不知道响应的模式,我尝试了
JSONArray
,但这不是
JSONArray

那么,如何在CloudFireStore中获取集合中的对象列表呢

我试过
jsonArray
,但那不是
jsonArray

这显然不是一个
JSONArray
,而是object类型的属性。除此之外,
JSONArray
并不是一个好的选择

那么,如何在CloudFireStore中获取集合中的对象列表呢

不幸的是,您无法将
listTask
属性直接映射到自定义对象列表中。您应该为此编写一些代码。
listTask
属性实际上是HashMap对象的列表,正如您的响应所述:

response: [{id=29356, title=Database, status=false}, {id=28581, title=UI UX, status=false}, {id=66044, title=Architecture Design, status=false}, {id=77830, title=Functional Test, status=false}]
请参见,它以
[
开始,以
]
结束,这使它成为一个数组,数组中的每个对象都是一个
哈希映射。因此,您需要遍历HashMap对象列表,并创建自己的
“Task”
对象列表


如果您愿意,您可以联系Firebase团队并提出请求。

那么如何迭代呢?我应该如何处理
document.data[“listTask”]
我该如何处理它,我尝试将
document.data[“listTask”]作为?数组
但我认为这不是正确的方法,应该是
ArrayList
。因此,只要在该列表中有
HashMap
对象,就可以使用迭代将它们中的每一个都取出来。