yeah  this is silly isscreenon does not necessarily mean what you think it means  what if there were multiple screens  you should be stopping progress from onpause instead the activitymanager will take care of pausing activities when the device goes to sleep 