Я пытаюсь создать простое приложение для Android, которое запускает и останавливает простой сервис с помощью startService()
. Я замечаю, что каждый раз, когда я вручную заканчиваю процесс приложения (закрывая приложение), создается другой экземпляр моего сервиса.начал службу воссоздается после завершения процесса
Другими словами, служба, которую я создал, не разрушена, и создается дополнительная служба. Я могу видеть, что onDestroy()
не называется, а onCreate()
& onStart()
дозвонились снова
Почему? Как я могу это предотвратить? Вы можете увидеть исходный код, я использую в этом примере: Source Code
Закрытие приложения обычно не должно прерывать его процесс (хотя это может произойти при экстремальном давлении в памяти). Нормально, что компонент, например Activity или Service, должен быть уничтожен, когда он находится в совместимой конфигурации, и его можно просто запустить снова. –
При написании закрытия приложения я имел в виду двойное нажатие кнопки «домой» и прокрутку приложения. Вы говорите, что это не прекращает процесс? –
Вывод из списка рецензентов завершает его, но это не обычный способ, когда пользователю предлагается оставить приложение (обычно вы просто «уходите» на что-то еще и оставляете решение об очистке от управления ресурсами Android). Когда процесс прекращается внезапно, onDestroy() не может быть вызван. –