android - 后台 Android 上的 Firebase 侦听器
问题描述
因此,我想在后台使用 Firebase 侦听器,因为在基于数据库值关闭应用程序时,我需要触发一些代码。我以为我可以将侦听器扔到服务上,但是由于操作系统在最近版本中的工作方式,阅读文档看起来服务不再是一个好的选择。
我发现了 WorkManager 类,它据说是实现后台代码的最佳新选项,它看起来不错,但是定期作业的 15 分钟最短时间对于我需要的东西来说已经足够了。
所以我想知道在后台使用 Firebase 侦听器的最佳做法是什么?还是我应该完全放弃在后台使用监听器的想法?
解决方案
当应用程序处于后台时,您不能强制听众保持直播。这是因为当用户不再使用它时,Android 可以(并且将会)终止应用程序进程。您与数据库的连接将丢失。
您可以使用 WorkManager 定期唤醒您的应用程序以检查数据库,但这听起来不像您想要的。
首选的解决方案是使用 Firebase Cloud Messaging 从您控制的后端来 ping 应用程序,当您知道有新数据感兴趣时。
推荐阅读
- java - Visual Studio Code 对 Derby 数据库的 JDBC 访问
- elasticsearch - 批量加载:确保完成所有 BulkProcessor 作业(Java 客户端 API)
- c# - 在 ContentDialog 中按一个键
- hibernate - 如何从spring数据或休眠中调用oracle程序
- android - 在 Android 中以编程方式更改语言不适用于从 App 包格式生成的 APK
- python - 如何检测电报机器人中的命令(在python中)
- java - GC(分配失败)[PSYoungGen]
- netlogo - Netlogo - 使用网络外的海龟更新外链
- python - ImportError 动态模块没有定义初始化函数(boost.python)
- python - 冻结模型中的 KeyError