Chapter 7. Scheduling Work with AlarmManager
Maintaining the responsiveness of foreground apps has been our primary focus throughout this book, and we've explored numerous ways to shift work away from the main thread to run in the background.
In all of our discussions so far, we wanted to get the work done as soon as possible, so although we moved it off to a background thread, we still performed the work concurrently with ongoing main thread operations, such as updating the user interface and responding to user interaction.
In this chapter we'll learn to schedule work to run at some distant time in the future, launching our application without user intervention if it isn't already running, and even waking the device from sleep if necessary.
In this chapter we will cover:
Scheduling alarms with AlarmManager
Canceling alarms
Scheduling repeating alarms
Handling alarms
Staying awake with WakeLocks
Applications of AlarmManager