Pesquisar neste blog:

07/01/2025

Como Impedir que a Tela do Celular Desligue ou Bloqueie em um Aplicativo Android

Você já desenvolveu um aplicativo Android e se perguntou como evitar que a tela do celular desligue, hiberne ou ative a tela de bloqueio enquanto o app estiver aberto? Essa funcionalidade é especialmente útil para aplicativos de leitura, jogos ou monitoramento, onde o comportamento padrão de economia de energia pode atrapalhar a experiência do usuário.

Neste post, vou mostrar como implementar essa funcionalidade de maneira simples no Android Studio.

Mantendo a Tela Sempre Ativa no Android

A solução para impedir que a tela desligue é adicionar a flag FLAG_KEEP_SCREEN_ON na Activity do seu aplicativo. Essa configuração informa ao sistema operacional que, enquanto essa tela estiver ativa, ele deve evitar o bloqueio ou o desligamento automático.

Passo a Passo:

  1. Abra o método onCreate() da sua Activity

    Adicione o seguinte código no método onCreate() para aplicar a configuração assim que a Activity for aberta:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    
        // Impede que a tela desligue enquanto esta Activity estiver visível
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
    }
  2. Reverter o Comportamento (Opcional)

    Se for necessário permitir que o sistema volte a bloquear a tela quando o usuário sair da Activity, você pode limpar a configuração no método onDestroy():

    @Override
    protected void onDestroy() {
        super.onDestroy();
        getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
    }
  3. Testando o Aplicativo

    Compile e rode seu aplicativo. Verifique se a tela permanece ativa enquanto a Activity está visível, mesmo que você não interaja com o dispositivo.

Por Que Usar Esta Abordagem?

Essa solução é simples, eficaz e não exige permissões especiais no Android. É perfeita para aplicativos que exigem interação constante ou que não podem ser interrompidos pelo bloqueio da tela.

Cuidados Importantes:

  • Evite deixar essa configuração ativa em todas as telas do aplicativo. Mantenha-a apenas onde realmente for necessário, para evitar consumo excessivo de bateria.
  • Garanta que o comportamento volte ao normal quando o usuário sair do aplicativo.

Conclusão

Manter a tela sempre ativa em um aplicativo Android é uma tarefa fácil e pode melhorar muito a experiência do usuário em situações específicas. Com o uso de WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON, você garante que o sistema mantenha a tela ligada enquanto a Activity estiver visível.

Gostou da dica? Tem alguma dúvida ou sugestão? Deixe seu comentário abaixo!

Nenhum comentário:

Postar um comentário

SIGA-NOS