Фоновая служба приложения, похоже, засыпает

У меня есть экземпляр Service который перечисляет для контактов изменения:

 Application.getContentResolver().registerContentObserver(ContactsContract.Contacts.CONTENT_URI, true, mContactsObserver); 

Это делается на onStartCommand и не зарегистрировано в onDestroy

Эта Service связывается с Менеджером, который живет на экземпляре Application .


Учитывая эту настройку, у меня есть странная ошибка:

  1. Я открываю приложение, все работает

  2. Я отправляю приложение на задний план и убиваю его, служба перезагружается и все работает нормально

  3. Но когда я отправляю приложение на фон, иногда журналы просто останавливаются, приложение, похоже, замирает … Я не получаю уведомления о смене контактов и ничего другого, но приложение также не будет убито. У меня есть ScheduleThreadPool , который также не запускает свои задачи в течение этого периода.

Когда я снова открываю приложение, все возобновляется как обычно. И журналы показывают, что Служба не воссоздана, она все еще работает.

Является ли это ожидаемым поведением из-за некоторой политики экономии батареи?

Важное примечание. Это происходит на Samsung GT-I9515 с Android 4.4.2, поэтому Doze не является виновником.