Я не мог понять новые функции Android в отношении сервисов. В документации Google после oreo
разработчики должны использовать службу переднего плана для запуска службы, когда приложение находится в фоновом режиме.
Я нашел это описание.
«Начиная с Android O, если ваше приложение находится в фоновом режиме (отметьте три условия выше), вашему приложению разрешено создавать и запускать фоновые службы в течение нескольких минут.
По прошествии нескольких минут ваше приложение перейдет в режим ожидания. Когда ваше приложение переходит в стадию бездействия, система останавливает все фоновые службы так же, как ваша служба вызывает Service.stopSelf()
.'
Я не мог понять, что даже если я запущу службу с START_STICKY, она не запустится снова? Я знаю, что если я начну с START_STICKY , он точно перезапустится после kill. Почему я должен использовать JobScheduler
для некоторых нужд (обновления местоположения и т. д.). Может кто-нибудь объяснить это. Я не очень хорошо понимал документы Google.
Я тестирую это сейчас на galaxy note 8 api26
телефоне. Я запустил службу с помощью startService при запуске приложения, и он перезапустился после закрытия приложения. В чем разница между более старыми версиями
Спасибо.
Service.Startforground(new notification...
, иначе служба просто остановится снова и, возможно, приведет к сбою приложения. Я думаю, у тебя есть около 5 секунд, чтобы позвонить - person Pierre   schedule 25.01.2019intent.getAction()
в StartCommand. Попробуйте добавить действиеserviceIntent.setAction("some.action");
- person Pierre   schedule 25.01.2019