Odpowiedź @paha pomija ważny punkt:IntentService to za mało. Między onReceive()
kończy się, a usługa IntentService jest uruchamiana, telefon może ponownie zasnąć. Potrzebujesz (statycznej) blokady, aby wypełnić tę lukę - jest to zaimplementowane w WakefulIntentService
Marka Murpphy'ego
Więc zachowaj AlarmManager i odbiornik, ale uruchom WakefulIntentService
z Twojego onReceive()
.
Zobacz:
- Blokady głębokiego uśpienia i wybudzenia Androida
- PowerManager wakelock nie wybudza urządzenia z usługi