2017-09-12 51 views
0

删除我要补充以下特点在我的Android应用程序中的REST调用在Android的发生。我想,如果应用程序是由OS死亡或从最近的应用程序列表

有一个客户端,当客户端登录到应用程序,点击一个按钮,通过网上去,使自己提供给用户。当他点击该按钮时,会进行一次休息呼叫,并更改数据库状态(状态更改为联机)并使其联机。现在

我的问题是我想使客户端不可用(离线),如果应用程序是越来越强制关闭或从后台的Android删除,由于内存不足,或者从近期的应用的用户删除。如果发生这些情况,我会通过休息电话来处理这种情况。

在正常情况下,如果他是在网上,他可以再次点击按钮,使DB休息通话将他的状态更改为不可用(离线)。

注意:我不想使用onPause()onStop()方法,因为我希望客户端在线,即使他导航出应用程序并返回。

回答

0

原则上你不能因为总是有当用户可以获得无反馈断开的情况下(例如失去信号,电池)。

IMO你应该寻找方法来检测从服务器端的超时,类似于this SO answer概述的socket.iodisconnect()

+0

这将在服务器端。这很好,我可以试试这个。但是从应用程序方面来看,像广播接收器这样的东西? – Shreyash

+0

你可以按照[这个答案](https://stackoverflow.com/a/19560863/515948)来捕捉一些事件(例如'onStop'或'onDestroy'),但总有当这种事件不会发射的情况。 –

相关问题