Hey devs,

I'm trying to figure out how apps schedule tasks or events in the Android OS. I inquire about this because I have various apps that randomly don't fire off their corresponding scheduled actions. For example, Titanium Backup will usually perform my nightly backup - but sometimes it won't. Or a daily Bible verse or quote, for another example. Usually works, sometimes it doesn't. Or my RSS feed reader will fail to sync at the scheduled interval.

Using my first example, I'll notice if I've rebooted my phone, Titanium Backup will usually not execute the backup at the scheduled time. If I remember to run the app once, I will then see a process and a service running in memory that I did not see before and the backup will run as scheduled. But I didn't think a running service was necessary to execute scheduled events.

I am running 2.3.3 on an original Droid, so it may be something to do with aggressive memory management and how little RAM the Droid has, but I'm not certain. If it were just one app, I would think it might be a coding issue in the app itself, but since it's various apps... I'm curious what's going on.

So, how is it supposed to work? What's the standard way to manage scheduled events (from the app development side) and what would cause such behavior that I've described?

Thanks.