I have an app which is used for lets say 4 hours, but only every 5 minutes a user needs to make an input or read the screen. Putting the phone to sleep and locking the scre
You can use:
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.dimAmount=1.0f;
getWindow().setAttributes(lp);
to dim/undim the screen when you want to.
lp.dimAmount=1.0f
will dim the screen totally but you can set it at your will with values from 0 (no dim at all) to 1.0f.
You can set a timer to call this after 5 minutes of inactivity and then turn the screen "back on" on any touch event or such maybe.