Firebase 实时数据库延迟

问题描述 投票:0回答:3

我正在为我的应用程序使用 Firebase 实时数据库。这很棒,但我第一次将数据从应用程序写入 Firebase 时遇到了几秒钟的延迟。意味着每次启动应用程序时,都需要 2 秒的时间才能将数据发送到 firebase。之后它就能以极快的速度正常工作。我知道这在任何方面都不是一个大的延迟,但就我而言,我非常需要立即传输和获取数据。有什么办法可以减少这种延迟吗?预先感谢。

java android database firebase real-time
3个回答
1
投票

首次从代码访问 Firebase 实时数据库时,SDK 必须建立与服务器的连接。这涉及多个步骤,仅在建立第一个连接时才需要。这解释了为什么第一次连接可能需要一些时间,而且实际上花费一秒以上的情况并不罕见。

您无法在代码中执行任何操作来提高实际连接速度。这取决于您的带宽和延迟(我假设您对更改不感兴趣)以及 SDK 和服务器(您无法更改)。

您所能做的就是在应用程序的生命周期中尽早开始连接,而不是等到需要首先读取/写入数据时才开始连接。例如,考虑在应用程序首次启动时向

.info/connected
添加侦听器。


0
投票

确实, 据我所知,vj Shandilya,您好,初始连接时间应该比预期要长一点,因为我和我的团队正在开发一个与 firebase 和 Android-Java 相关的基于物联网的项目。

也许您可以添加自定义(不强烈)进度动画来掩盖 2 秒。


0
投票

原因:这是因为Firebase首先需要在您的应用程序和Firebase服务器之间建立连接。总是会延迟几秒。

解决方案: 在应用程序启动时建立连接。加载第一个 Activity 后,在 MainActivity.java 或首先加载的其他 Activity 的

onCreate()
内建立 Firebase 连接。

© www.soinside.com 2019 - 2024. All rights reserved.