首页 > 解决方案 > 如何保持 FirebaseDatabase 连接始终在线?至少几个小时

问题描述

有人可以帮助我保持 Firebase 数据库连接始终在线吗?我一直在做一个类似于 UBER 应用程序的项目。我只想让客户即使在驱动程序的应用程序在后台运行时也能看到驱动程序。为此,我必须保持 Firebase 数据库和驱动程序应用程序的连接,即 FirebaseDatabase.getInstance().goOnline()。总是 !!至少几个小时。这个故事就像有两个应用程序,我们可以在地图片段上看到彼此的位置,我只想这样做,如果第一个应用程序在后台工作,即使这样第二个应用程序也应该能够看到位置(第一个标记) 第一个。就我而言,它只持续几分钟。我进行了很多研究,并且了解了在后台工作的服务,但我怀疑这些服务如何使我的应用程序活动连接到 FirebaseDatabase。是不是,如果服务正在工作并与数据库连接,那么我的应用程序活动也已连接?即 FirebaseDatabase.getInstance().goOnline() == true ??

需要一些代码和帮助!请!!

标签: javaandroidfirebasefirebase-realtime-database

解决方案


如果您的应用程序将长期处于后台,您需要知道 Android(操作系统)可能会杀死您的应用程序的进程以支持更重要的应用程序。当您的进程在前台不再可见时,Android 也可能会阻止您的进程联网。这是正常的行为,因为普遍的兴趣是防止表现不佳的应用程序消耗过多的资源。

如果您的应用需要在用户不再使用它时继续联网,则您必须启动一个foreground service,这还要求您向用户显示通知,向用户表明您的应用仍在运行。这是需要的,因为用户应该知道应用程序将消耗比预期更多的资源。


推荐阅读