【问题标题】:Firebase User Properties - how to store a list value correctly?Firebase 用户属性 - 如何正确存储列表值?
【发布时间】:2025-12-10 21:45:01
【问题描述】:

无法存储列表值。例如。 “自闭症、唐氏综合症、焦虑”或多重兴趣“瑜伽、运动”。

我们尝试单独存储每个值,但随后这些值相互覆盖。存储“自闭症、唐氏综合症、焦虑、抑郁”是行不通的,因为有 38 个符号的限制,并且什么都没有存储。

这对于分析非常重要。通过这种方式,我们可以立即在 Firebase Analytics 或 DataStudio 中衡量“自闭症”用户与“唐氏综合症”用户等的不同之处。这对于我们的产品和社区洞察力至关重要。

【问题讨论】:

  • 向我们展示您在代码中尝试过的内容。
  • 代码没有错。我们正在使用 firebase 用户属性。它们只能存储 38 个字符的字符串。我们尝试通过逗号存储数据值,但该数据不能用于创建漏斗,因为我们无法从列表中获取具有一个属性的用户。例如,如果 user_property 存储为“diagnose1,diagnose2”,我们在通过“diagnose1”过滤时无法抓取该用户
  • 你试过用数组吗?
  • 什么样的数组?把 ['diagnose1','diagnose2','diagnose3'] 代替字符串? Dart 甚至都不给我编译的机会。原因方法签名是(字符串名称,字符串值)

标签: firebase google-cloud-platform google-cloud-firestore google-bigquery firebase-analytics


【解决方案1】:

通常,使用用户 uid 作为键,将用户相关数据作为不同的记录存储在实时数据库或 Firestore 中。

在您的情况下,使用 Firestore(推荐),您可以声明一个数组值并将您的标签存储在其中。

【讨论】:

  • 我们知道如何使用 Firestore。问题是我们不知道如何在用户属性中存储列表值,因此它可以在 Firebase 分析过滤器中正确显示。