【问题标题】:How to get the keys in a Firestore document?如何获取 Firestore 文档中的密钥?
【发布时间】:2021-08-20 08:45:46
【问题描述】:

大家好,我是 Kotlin 初学者。

在玩 Firestore 的时候,突然有一个问题。

字段的值可以很容易地检索到,但是

有没有办法获取字段本身的文本?

我想按字面理解下图中的蓝色方块。

任何帮助将不胜感激。

【问题讨论】:

    标签: android firebase kotlin google-cloud-firestore


    【解决方案1】:

    DocumentSnapshot#getData() 方法,返回 Map 类型的对象。要获取文档的键,只需遍历 Map 对象,如以下代码行所述:

    val uid = FirebaseAuth.getInstance().currentUser!!.uid
    val rootRef = FirebaseFirestore.getInstance()
    val uidRef = rootRef.collection("users").document(uid)
    uidRef.get().addOnSuccessListener { document ->
        if (document != null) {
            document.data?.let { data ->
                data.forEach { (key, _) ->
                    Log.d(TAG, key)
                }
            }
        } else {
            Log.d(TAG, "No such document")
        }
    }.addOnFailureListener { exception ->
        Log.d(TAG, "get failed with ", exception)
    }
    

    在logcat中得到如下结果:

    email
    id
    nickname
    password
    phone
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多