我想在用户未连接到Internet时更新Firebase数据库。就像您在应用程序中一样,现在您关闭应用程序后就关闭了Internet连接。因此,我正在使用LifeCycleObserver
来检测应用程序是在前台还是在后台。我想在Application类中调用onStop时将用户状态设置为脱机。互联网连接打开时,它可以正常工作。
我尝试了OnDisconnect()。setValue(-),但是它不起作用。谁能帮助我解决这个问题?
userDatabase.child(AppConstants.USER_IS_ONLINE).onDisconnect().setValue(status,object : DatabaseReference.CompletionListener{
override fun onComplete(p0: DatabaseError?, p1: DatabaseReference) {
Log.d("Success","YES")
}
})
答案 0 :(得分:1)
我想在用户未连接互联网时更新Firebase数据库。
您无法执行此操作。由于用户设备和Firebase服务器之间没有Internet连接,因此您无法更新任何内容。为了访问Firebase后端,必须进行互联网连接。
有两种方法可以使用户与Firebase数据库断开连接。为此,请参见以下文章中弗兰克·范·普菲伦的回答: