当网络连接断开时,将响应保存到服务器

时间:2019-02-22 20:41:37

标签: android firebase internet-connection

我有两个应用

  

客户端应用

  

服务器应用

在Android中

  

我想要什么

要在我的服务器应用程序中检查天气客户端应用程序是否具有互联网连接。

  

我做了什么

我已经读过这个post

我已使用BroadcastReciever收听天气,互联网是否可用。一切都很好。当互联网连接正常时,我会将值在线保存到Firebase“ true”

  

但是

互联网连接断开时,

我正在使用 Firebase onDisconnect()方法保存ServerValue.TIMESTAMP

它可以在两分钟内工作,但有时它不会更新Firebase,并且值保持不变。

请注意在连接客户端应用程序时需要什么,在firebase上应保存为true,在未连接时应保存为false。尽管在我的服务器应用程序中,我会检索那些值以显示给客户端在线还是离线

在Android中是否还有其他技术可以实现这种情况?

您对我目前的情况有何建议? ?

我们将非常感谢您的帮助。

谢谢

1 个答案:

答案 0 :(得分:3)

保留此 onDisconnect(),编写一个将不执行任何操作但只会在固定时间后连续ping通服务器的API,也就是说每隔2秒就会调用一次API(通过服务) ,因此如果网络断开连接或手机甚至关机,由于API不会响应服务器,在这里您将编写一个代码,以防应用在2秒后无法ping到服务器(或者您可以说5秒),则响应(在线状态)应自动为 FALSE

因此,如果该应用程序再次连接到互联网,则由于该服务正在运行,因此该服务会将您的false再次更新为 TRUE 太简单了!

我认为这是您必需的功能!