Still haven't tried to do it with AlarmService, but I've found some snippet that is using Handler to initiate scheduled task.
I had problem to update map when using Timer because it's not allowing to access UI from non UI thread
(ERROR: Can't create handler inside thread that has not called Looper.prepare()).
Now I've created something like this in onCreate
In location listener I call removeUpdates inside onLocationChanged to stop GPS updating after retrieving location.
Now it's requesting location every 20sec (and move the marker across the map)
Is this approach good, or it has some hidden issues?
ps. Your book will certainly come to rescue