2017-09-12 45 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'),但總有當這種事件不會發射的情況。 –

相關問題