You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Firebase Firestore数据库的Number字段获取字符串值

从Firebase Firestore获取指定字段的字符串值

当查询成功且结果非空时,你可以通过task.result.documents获取匹配的文档列表,再调用getString()方法提取目标字段的字符串值。假设电话号码是唯一的,只会返回单个匹配文档,修改代码如下:

private fun lookIntoDatabaseForClient() {
    setMobileNumberToEditText()

    bbdd.collection("Taxi").whereEqualTo("number", number).get().addOnCompleteListener { task ->
        if(task.isSuccessful && !task.result.isEmpty) {
            // 获取第一个匹配的文档
            val targetDoc = task.result.documents.first()
            // 提取"number"字段的字符串值
            val phoneNumber = targetDoc.getString("number")
            // 可根据需求使用该值,比如弹窗显示
            Toast.makeText(applicationContext, "找到客户,电话号码:$phoneNumber", Toast.LENGTH_LONG).show()
        } else {
            Toast.makeText(applicationContext, "客户不存在于数据库中。", Toast.LENGTH_LONG).show()
        }
    }
}

补充说明

  • 如果存在多个匹配文档,可通过循环遍历task.result.documents逐个处理:
    for (doc in task.result.documents) {
        val phoneNumber = doc.getString("number")
        // 处理每个号码
    }
    
  • getString("number")在字段不存在或类型不符时会返回null,可添加空值兜底:
    val phoneNumber = targetDoc.getString("number") ?: "未知号码"
    

内容的提问来源于stack exchange,提问作者user21771755

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 01:59:55