Android provides AlarmManager to create and schedule alarms. Alarms offer the following features:
- Schedule alarms for a set time or interval
- Maintained by the OS, not your application, so alarms are triggered even if your application is not running or the device is asleep
- Can be used to trigger periodic tasks (such as an hourly news update), even if your application is not running
- Your app does not use resources (such as timers or background services), since the OS manages the scheduling
Alarms are not the best solution if you need a simple delay while your application is running (such as a short delay for a UI event.) For short delays, it's easier and more efficient to use a Handler, as we've done in several previous recipes.
When using alarms, keep these best practices in mind:
- Use as infrequent an alarm timing as possible
- Avoid waking...