Служба запускается автоматически?

1

У меня есть служба, которая началась с startService и привязана к BIND_AutoCreate, я хочу, чтобы моя служба запускалась автоматически, когда андроид убил ее для низкой памяти, как я могу ее внедрить?

благодаря'

Теги:

2 ответа

0
Лучший ответ

Если служба создана из-за привязки BIND_AUTO_CREATE, она будет остановлена, если у нее нет связанных с ней действий.

В соответствии с документами (жизненным циклом службы) вы можете запускать явным образом службу, а затем связываться с флагом автосоздания.

Если вы явно запускаете службу как STICKY (возвращая START_STICKY в свой метод * onStartCommand *, она будет автоматически перезагружаться, когда система будет иметь больше ресурсов.

  • 0
    Я сделал это, кажется, что есть ошибка в устройстве Android.
0

Вам необходимо зарегистрировать широковещательный приемник для ACTION_DEVICE_STORAGE_OK что указывает на ACTION_DEVICE_STORAGE_OK что состояние с низкой памятью на устройстве больше не существует. В onReceive() проверьте свою службу, если она остановлена, запустите ее.

Действие DEVICE_STORAGE_OK передается, когда устройство восстановилось из состояния низкой памяти (внутренняя память). Я думаю, что это идеальное событие для вас, чтобы проверить, был ли ваш сервис убит во время восстановления памяти системой, и запустите его, если он был убит.

Пожалуйста, прочитайте здесь документацию.

  • 0
    Я думаю, что вы не спали !!!
  • 0
    Я не спал в течение нескольких дней .. В чем проблема?
Показать ещё 7 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню