Escurecer a tela enquanto o usuário está inativo

Eu tenho um aplicativo usado por, digamos, 4 horas, mas apenas a cada 5 minutos um usuário precisa fazer uma entrada ou ler a tela. Colocar o telefone no modo de suspensão e bloquear a tela é um pouco chato. Então, eu tenho duas opções:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); que não bloqueia a tela, mas a tela está sempre clara, eu gostaria de escurecer enquanto não houver atividade. Só por causa da vida útil da bateria, ou isso não importa muito nessas 4 horas?

uma trava de vigíliaSCREEN_DIM_WAKE_LOCK que faz o que eu quero, mas me disseram para usar a opção 1 acima.

Posso alcançar o desejado de alguma forma sem uma trava de ativação?

questionAnswers(3)

yourAnswerToTheQuestion