Método onPause()

O último callback que estudaremos é o onPause. Esse método é o oposto do onResume e é chamado imediatamente antes da Activity perder o foco. Diferentemente dos outros métodos de finalização da Activity (onStop e onDestroy), o onPause é sempre chamado, mesmo em casos extremos. Esse método deve então, por esse motivo, ser um método de rápida execução, pois será executado por completo e irá bloquear uma nova Activity que tenha tomado a frente até terminar a sua execução. Uma vez terminada essa execução, o Android passa então a ter liberdade para finalizar a Activity a qualquer momento, caso um processo de maior prioridade requisite a memória que está sendo utilizada pela sua Activity. São nesses casos que a Activity é encerrada passando pelo onPause, mas não pelo onStop ou onResume.

Nesse método, deve-se desfazer tudo que foi feito no método onResume. Utilizando os mesmos exemplos citados na subseção anterior, podemos dizer que esse método é o responsável por parar o relógio que esteja sendo mostrado para contar o tempo da Activity, ou por parar as animações que estavam sendo exibidas no jogo, ou ainda liberar recursos de uso exclusivo (como a câmera, por exemplo) que estivessem sendo utilizados pela Activity para que a outra que tomou a frente possa utilizá-los. Conhecendo esse método, concluímos então o nosso estudo dos callbacks de uma Activity no Android.

O vídeo a seguir mostra, com um exemplo prático, o ciclo de vida de uma Activity. Apesar do vídeo utilizar o Eclipse, é possível acompanhá-lo, utilizando o mesmo código, no Android Studio, caso seja de seu interesse. O logcat, no Android Studio, fica localizado na parte inferior esquerda, na aba Android Monitor.

Versão 5.3 - Todos os Direitos reservados