Сохранить состояние сокета при выходе из активности Android - PullRequest
0 голосов
/ 30 октября 2011

У меня есть сокет (хранится в классе Communicator) для подключения к серверу. Когда он подключен, я передаю его через некоторые действия с помощью getApplication (), например:

   ((CustomApllication<Communicator>)getApplication())
       .setObjectStore(communicator);

И я могу получить это:

     communicator = ((CustomApllication<ICommunicator>) getApplication())
                .getObjectStore();

Проблема в том, что когда пользователь нажимает кнопку «назад», клавишу «домой» или поступает вызов, активность закрывается, и когда я возвращаюсь, я не могу получить этот сокет.
Я хочу сохранить состояние сокета всякий раз, когда пользователь покидает активность. Когда они возвращаются, сокет всегда доступен и может подключаться к серверу. Как я могу это сделать?

1 Ответ

1 голос
/ 30 октября 2011

Таким образом, если ваше приложение закрывается системой, вы не сможете восстановить этот сокет. Лучшее, что вы можете сделать, это просто закрыть сокет, когда приложение закрывается, и найти способ правильно восстановить соединение при восстановлении приложения. Поэтому вам нужно будет сохранять любое состояние, необходимое для восстановления сокета при запуске. Вы можете сохранить некоторые из этих данных в настройках, файловой системе и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...