如何在Firebase Analytics中查看当前应用安装基数相关指标?
Firebase Analytics本身没有直接提供“当前所有安装用户”的快照式统计(因为无法追踪已卸载用户,且核心是事件驱动的累加统计),但可以通过以下几种方式近似获取你需要的指标:
自定义用户属性追踪
在App启动时,调用Firebase Analytics的setUserProperty方法,设置app_version(获取当前App版本号)、platform(区分iOS/Android)这两个属性,每次启动都更新该属性(确保用户更新版本后数据同步)。之后在Firebase控制台的「用户属性」板块,就能查看这些属性的分布情况——这里的数据是当前活跃用户的属性,若要近似当前安装用户,可将时间范围调整为覆盖大部分用户活跃周期(比如过去30天),基本能反映当前主流安装的版本和平台。借助Firebase Crashlytics
进入Crashlytics的「版本」页面,这里会展示有崩溃上报的设备对应的版本分布,同时自动区分iOS/Android平台。虽然数据基于崩溃事件,但如果你的App用户群体有一定的活跃度,这个数据可以近似当前安装用户的版本占比,操作也无需额外开发。FCM结合数据库聚合(需额外开发)
若你的App集成了FCM,可在用户注册FCM Token时,将Token与app_version、platform属性一同存入Firestore或Realtime Database。之后通过数据库的聚合查询,就能统计当前注册FCM的设备对应的版本和平台分布——FCM注册设备数基本等同于当前未卸载且能接收推送的安装用户。BigQuery导出查询(Blaze计划可用)
将Firebase Analytics数据导出到BigQuery后,编写SQL查询筛选最近N天内有app_open事件的用户(近似活跃安装用户),再按app_version、platform分组统计。例如:SELECT user_properties.value.string_value AS app_version, device.platform, COUNT(DISTINCT user_pseudo_id) AS user_count FROM `your-project-id.analytics_xxxxxx.events_*`, UNNEST(user_properties) AS user_properties WHERE event_name = 'app_open' AND _TABLE_SUFFIX BETWEEN FORMAT_DATE('%Y%m%d', DATE_SUB(CURRENT_DATE(), INTERVAL 30 DAY)) AND FORMAT_DATE('%Y%m%d', CURRENT_DATE()) AND user_properties.key = 'app_version' GROUP BY app_version, device.platform这里的30天可根据你的用户活跃周期调整,结果能精准反映当前活跃安装用户的版本和平台分布。
需要注意:所有方法都无法100%统计到所有已安装但从未活跃/长期未活跃的用户,因为Firebase无法追踪这类用户的状态,只能基于活跃数据做近似统计。
内容的提问来源于stack exchange,提问作者DaveDev

