如何离线存储 Firebase 分析数据超过 72 小时?

Posted

技术标签:

【中文标题】如何离线存储 Firebase 分析数据超过 72 小时?【英文标题】:How to store firebase analytics data offline for more than 72 hours? 【发布时间】:2020-03-29 12:45:30 【问题描述】:

我正在使用 Firebase 进行分析,并且我启用了 Firebase 持久存储,这有助于在设备联机时将分析事件发送到 Firebase,但限制是它只能将 72 小时的数据发送到 Firebase 分析。

我希望 firebase 至少获得过去 10 天的离线分析数据。

我可以通过在设备离线时将此分析事件存储在核心数据中并在设备连接到互联网时将此事件发送到 firebase 来实现吗?

或者有没有其他方法可以实现这一点?

我只想发送事件的名称和时间戳

【问题讨论】:

【参考方案1】:

您也许可以做一些事情在本地存储事件,但这会很挑剔且容易出错。

当自己存储事件然后在设备在线时提交它们时,我看到了许多潜在的问题。在我脑海中浮现:

    没有 API 来跟踪 Firebase 的内置清除分析事件的生命周期。因此,您很有可能会记录两次事件。

    您无法回溯事件,因此您在重新连接时触发的任何事件都将显示为当时已发生。

    您可能会错过 Firebase 自动记录的事件。您可能可以补偿,但此时您几乎是在构建自己的分析解决方案。

老实说,这是一些潜在的问题,而且您可能会遇到更多问题。我会认真考虑这些努力是否真的值得,或者您是否最好选择其他解决方案。

想到的一些解决方案:

    将您自己的事件直接记录到 BigQuery。然后与 Firebase 导出的 Analytics 事件合并,并对结果进行重复数据删除。

    选择 API 直接满足您要求的分析提供商。

【讨论】:

以上是关于如何离线存储 Firebase 分析数据超过 72 小时?的主要内容,如果未能解决你的问题,请参考以下文章

如何在用户离线时尝试将数据添加/上传到 Firebase 时显示错误?

Firebase 存储离线功能

Firebase A/B 测试离线行为

如何从 Firebase 获取 PWA 数据

如何缓存 Firebase 数据以供离线使用?

Firebase - 互联网离线时上传图片