Когда мне нужно было написать приложение с моделью клиент-сервер, где клиенты могли бы выходить и заходить в любое время, когда они захотят, (я полагаю, это также относится и к вашему приложению, когда вы используете мобильные устройства), я убедился, что клиенты отправляют онлайн сообщение на сервер, указывающее, что они подключены и готовы сделать все, что им нужно.
в то время сервер мог отправлять сообщения обратно клиенту через то же открытое соединение.
Кроме того, но я не знаю, применимо ли это к вам, у меня было какое-то сердцебиение клиентов, отправленных на сервер, чтобы сообщить, что он все еще в сети. Таким образом, сервер знает, когда клиент был принудительно отключен от сети, и он может пометить этого клиента как отключенного.