我需要从Firestore中的文档中的对象(名为“ 0”)获取数据,这可能吗? 这是我的代码:
val db = FirebaseFirestore.getInstance()
val docRef = db.collection("accessories")
.document("brand0")
docRef.get().addOnCompleteListener(OnCompleteListener<DocumentSnapshot> { task ->
if (task.isSuccessful) {
val document = task.result
val group = document.get("0") as ArrayList<String>
}
答案 0 :(得分:1)
看起来0
是一个对象类型字段。这意味着它将在本地表示为Map类型的对象,并使用字符串作为其包含的属性的键。
答案 1 :(得分:0)
经过反复试验,这最终对我有用,但是我不确定为什么。我在当前项目中正在使用kotlin。
fun getOwner(userId: String) {
val db = Firebase.firestore
val docRef = db.collection("users").document(userId)
docRef.get()
.addOnSuccessListener { document ->
if (document != null) {
Log.d(TAG, "DocumentSnapshot data: ${document.data}")
val data = document.data as Map<String, String>
showOwnerName.text = data["name"]
} else {
Log.d(TAG, "No such document")
}
}
.addOnFailureListener { exception ->
Log.d(TAG, "get failed with ", exception)
}
}
我正在将获取的数据转换为地图,这就是我能够访问其值的方式。