java - 当没有使用firebase的互联网连接时如何获取对手用户的在线/离线状态
问题描述
我正在使用 Firebase开发聊天应用程序,我需要与我聊天的用户的在线、离线和最后一次看到的状态。当用户连接到互联网时,我会得到这个状态,当用户没有互联网时,它不会在 Firebase 中更新,它仍然向离线用户显示在线。
没有互联网连接时如何立即更新 Firebase 数据库?
解决方案
没有互联网连接时如何立即更新firebase数据库?
离线时无法更新 Firebase 数据库。当用户设备上没有互联网连接时,这意味着用户无法访问 Firebase 服务器,换句话说,Firbease 服务器上不会进行任何更改,但是,如果您使用以下代码行:
FirebaseDatabase.getInstance().setPersistenceEnabled(true);
这意味着即使您处于离线状态,您也可以查询数据库。发生这种情况是因为 Firebase 创建了数据库的本地副本。在您离线时所做的每项更改都会在您重新上线后在 Firebase 服务器上更新。更清楚地说,每个使用 Firebase 数据库并使用的客户端都setPersistenceEnabled(true)
维护着自己的内部(本地)版本的数据库。更新数据时,首先将其写入此本地版本的数据库。
还有一个帖子我在几分钟前已经回答过了,我想你可能会感兴趣。
推荐阅读
- excel - 来自常规表的 Excel 相关下拉列表
- javascript - 猫鼬一对多参考正在返回陈旧的数据
- python - Discord.py on_raw_reaction_add() - 不向成员添加角色
- r - 从 R 运行 PowerShell 脚本
- mongodb - 展平嵌套的 JSON 结构并在 mongoDB 聚合中附加属性名称
- javascript - 我的反应和休息 api 应用程序出现错误,其中我的一个变量返回未定义
- javascript - 如何从 JavaScript 中的“文字符号”字符串制作 RegExp?
- python - Python 部分 dict 到 csv 的翻译
- mysql - 如何使用流星 vlasky:mysql 包创建、插入和更新集合?
- github-pages - GitHub Pages URI 的最大长度是多少?