【问题标题】:Getting programmatic access to Firebase Analytics trending events以编程方式访问 Firebase Analytics 趋势事件
【发布时间】:2021-03-09 04:19:53
【问题描述】:
我有一个播放音轨的移动应用程序。它使用 Firebase Analytics 记录播放的“曲目名称”等事件。在 Firebase 的“StreamView”中,人们可以访问趋势事件并查看在任何给定时刻播放的最受欢迎的曲目。我想访问此列表并在我的应用中使用它来显示“正在播放的曲目”列表。
我已经研究过获得分析趋势事件数据的访问权限,并认为Firebase Cloud Functions 可能会提供一种方法来提取我需要的信息。但是,我不确定这是正确还是最简单的方法。
谁能告诉我是否可以提取趋势事件,如果可以,请指出正确的方向?
谢谢
【问题讨论】:
标签:
firebase
google-cloud-functions
firebase-analytics
【解决方案1】:
编辑 - 实际上,有一种更好、更简单的方法可以访问过去 30 分钟内您的应用中发生的实时事件。您可以使用Google Analytics Data API 这样做。
使用 API,您可以过滤过去 30 分钟的事件数据,并在 play_track 事件上检查已播放曲目的相关自定义维度(或提供自定义维度过滤器以进一步指定您的事件数据)回来)。
这将是实现您所寻求的理想方式。如果您想保留更长的正在播放的趋势曲目记录(例如,在过去一小时、过去 24 小时等...不过),您可能仍想使用 Cloud Firestore。另请注意,该 API 仍处于 alpha 阶段。
-- 编辑结束
其他解决方案
选项 1 - 使用 Cloud Firestore
这可能是最简单的解决方案 - 您可以通过在 Cloud Firestore 中创建一个简单集合并更新正在播放的曲目的记录来创建事件发生时正在播放的曲目的记录。除了仅使用 Google Analytics(分析)之外,还需要额外的努力来记录和检索播放的曲目,但应该可以直接实施。
请注意,您可能需要先查看 Firestore pricing guide,然后再选择此选项。
选项 2 - 使用 Firebase 云函数
每次记录play_track 事件时,您都可以trigger a Cloud Function。该事件需要标记为转换事件才能触发云函数,并且在云函数中,您可以访问事件参数以识别正在播放的曲目,并随着时间的推移在某处为哪些曲目保留记录正在播放以确定最流行的曲目。要保持状态,您可以使用 Firestore 之类的工具来跟踪当前正在播放的“曲目”。
关于这种方法的几点注意事项:
- 您需要查看 Cloud Functions for Firebase pricing guide,以确保它在您的需求可接受的范围内。
- 用于分析事件的 Cloud Functions 触发器目前仅适用于 Android 和 iOS 应用(不支持网络应用)。
- Cloud Functions 的 Google Analytics 触发器目前处于测试阶段。
选项 3 - 将 BigQuery 用于您的分析数据
此选项需要更多的设置工作,但您可以export your Google Analytics data to BigQuery,并查询生成的日内表格以查看哪些轨道正在流行以及更多其他见解。
使用这种方法需要注意的是,您还需要查看使用 BigQuery 的定价指南,以确保它符合您的需求,并且您需要拨打电话来执行查询并检索跟踪(或获取缓存的结果)。