Вот тут https://habrahabr.ru/post/265159/парень очень хорошо раскрывает аспекты выживания служб в Android.
Суть статьи:
Если юзер смахивает приложение из списка, то это приводит к закрытию сервиса пораженного этой activity. Как выход - предлагают использовать "режим" Foreground. Как известно это порождает Notification в статус баре.
Мне сразу вспомнилось приложение cloud.mail.ru. Я им пользуюсь больше года. Удаление activiti из списка запущенных, никогда не влекло остановку службы. Ни разу не приходилось её перезапускать. И неубиваемый "Notification" в баре не висит.
Каким образом разработчики mail.ru обходят эту проблему в своем приложении cloud.mail.ru (https://play.google.com/store/apps/deta ... loud&hl=ru)
p/s пишу здесь, поскольку комментировать исходную статью возможности нет.
аспекты выживания служб в Android?
- Mikhail_dev
- Сообщения: 2386
- Зарегистрирован: 09 янв 2012, 14:45
- Откуда: Самара
Re: аспекты выживания служб в Android?
Скорее всего их сервис работает как отдельный процесс и поэтому не убивается, потому что не относится к UI процессу
Re: аспекты выживания служб в Android?
Получается такой проблемы, как "убивание" процесса после закрытия его activity - нет? Проблема надуманная. И все что требуется - запустить сервис как отдельный процесс? И видимо автор статьи на habr-е упустил из виду такое решение своей задачи?Mikhail_dev писал(а):Скорее всего их сервис работает как отдельный процесс и поэтому не убивается, потому что не относится к UI процессу
Верно?
Тогда ребром встает вопрос(для меня), как же запустить сервис в отдельном процессе. Буду признателен, если укажите пару ключевых слова для поиска. Дальше я найду сам...
Re: аспекты выживания служб в Android?
В манифесте у сервиса прописать: android:process=":service" (вместо service можно написать любое имя, оно будет отображаться в списке процессов: my.package:service).
И в этом случае усложняется взаимодействие с ui.
И в этом случае усложняется взаимодействие с ui.
- Mikhail_dev
- Сообщения: 2386
- Зарегистрирован: 09 янв 2012, 14:45
- Откуда: Самара
Re: аспекты выживания служб в Android?
Любой процесс это по сути урезанная копия виртуальной машины, со своим хипом. Т.е. у вас будет разная область памяти. Ваш синглтон к примеру будет представляться разным объектом в том и другом процессе. 10 раз подумайте, чтобы так использовать процесс