У меня есть приложение, целью деятельности которого является подключение к серверу, сохранение и мониторинг подключения, а при отключении информировать пользователя об этом.В Activity есть другие диалоговые окна и пользовательский интерфейс, а также служба, работающая при подключении и мониторинге подключений.Служба запускается и останавливается только из потока пользовательского интерфейса.
Мой запрос: после установления соединения служба будет запущена, а действие будет скрыто.Из жизненного цикла я могу понять, что при скрытии он перейдет к этапу onPause ().И тогда, если устройство нуждается в памяти, оно может убить мою активность.Если соединение не установлено, я могу позволить его разорвать, но если оно будет установлено, то я не хочу, чтобы оно было разорвано без ведома пользователя.
Как скрыть активность?Как я могу остановить это от убийства?ИЛИ если его убивают, как сообщить пользователю об этом.Если деятельность будет убита, каково будет условие службы.Я не думаю, что тебя тоже убьют.Это становится несовпадением при перезапуске приложения.
РЕДАКТИРОВАТЬ ИНФОРМАЦИЮ: Спасибо @indyfromoz и Aleadam, @Aleadam, я посмотрел все эти ссылки, и это помогло мне понять и развить свой сервис,Я связываю сервиз с Активностью, и у сервиса есть заглушка, которая возвращается Активности, и, поскольку требуемый сервис отправляет сообщение Активу - о некоторых сообщениях только активность будет информировать пользователя, но сообщения уведомляются сервисом для активности.Во-вторых, запущен еще один AsyncTask, который также будет регулярно уведомлять об активности.И если какое-либо соединение потеряно, Activity обрабатывает, чтобы запустить эту задачу / сервис снова, информируя пользователя.До сих пор мне это удавалось, но я просто обеспокоен убийством активности.Service и ASyncTask будут работать и уведомлять пользователя, но пользовательский интерфейс не будет отображаться все время сверху, поэтому он будет находиться на этапе onPause.Если в случае недостаточного объема памяти система убивает активность тогда?
Вы пытаетесь сказать, что если служба привязана и уведомление будет продолжаться, активность не будет прервана, поскольку она активна, хотя и не видна?Я немного сбит с толку, обеспокоен и не понимаю, является ли их любое требование для обработки этой стадии моего заявления.Если так, то как?Для лучшего понимания ниже приведен мой поток приложения.
Поток: начало действия Некоторые входные данные, проверка, пользовательский интерфейс и т. Д. Служба запуска и привязки - startService (bindIntent);bindService (bindIntent, sevConn, flag);Сервис запущен / ограничен успешно?Запустите AstncTask: повторите попытку и сообщите (повторите попытки)
AsyncTask запущен СЕЙЧАС UI НЕ ТРЕБУЕТСЯ БЫТЬ НА ВЕРХЕ, ФОНОВАЯ РАБОТА НАХОДИТСЯ *
И AsyncTask & Service выдает уведомленияобрабатываются обработчиками в деятельности.На любой SP MSG дисплей для пользователя и, возможно, показать пользовательский интерфейс обратно.
Спасибо