Hello, I have a simple service which is woken up and started by AlarmManager (ELAPSED_REALTIME_WAKEUP). It acquires a wake lock, does some stuff, releases the wake lock and finishes. This works nicely with the screen locked. Now I want to change the behaviour so that the service is not started when the screen is locked. I change to ELAPSED_REALTIME, but the service is still started even if the screen is locked! Why? When I remove the acquiring of locks as well, this stops happening. But I don't get why the service is started if scheduled with ELAPSED_REALTIME only. Thanks for any kind of explanation.