0Pricing
Android Academy · Aula

Activities e Ciclo de Vida

Aprenda o que é uma Activity, compreenda os retornos de chamada do ciclo de vida da Activity (onCreate, onStart, onResume, onPause, onStop, onDestroy) e use ViewBinding.

Activities e Ciclo de Vida é uma aula grátis de Android Academy no CoddyKit. Esta é a aula 2 de 7. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Android Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Android Academy inclui 7 aulas no total.

O que é uma Activity?

Uma Activity é uma única tela do seu aplicativo Android.

  • Cada tela (login, página inicial, configurações) é uma Activity
  • Ela gerencia um layout (XML) e as interações do usuário
  • É declarada no AndroidManifest.xml

Pense nela como o equivalente Android de uma página da Web — cada página é uma Activity.

Ciclo de vida de uma Activity

Uma Activity passa por uma série de estados do ciclo de vida conforme o usuário navega pelo aplicativo:

  • Criada → Iniciada → Retomada (visível e ativa)
  • Pausada (parcialmente oculta)
  • Parada (completamente oculta)
  • Destruída (a Activity não existe mais)

Você substitui métodos do ciclo de vida para responder a essas transições.

Retornos de chamada do ciclo de vida

Os seis principais retornos de chamada do ciclo de vida:

  • onCreate() — a Activity está sendo criada. Configure seu layout aqui.
  • onStart() — a Activity se torna visível.
  • onResume() — a Activity está em primeiro plano e o usuário pode interagir.
  • onPause() — o usuário está saindo. Salve os dados temporários.
  • onStop() — a Activity não está mais visível.
  • onDestroy() — a Activity está sendo destruída.

Exemplo de MainActivity

Uma Activity mínima com registro do ciclo de vida:

import android.os.Bundle
import android.util.Log
import androidx.appcompat.app.AppCompatActivity

class MainActivity : AppCompatActivity() {

    private val TAG = "MainActivity"

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        Log.d(TAG, "onCreate")
    }

    override fun onResume() {
        super.onResume()
        Log.d(TAG, "onResume — user is here")
    }

    override fun onPause() {
        super.onPause()
        Log.d(TAG, "onPause — saving state")
    }

    override fun onDestroy() {
        super.onDestroy()
        Log.d(TAG, "onDestroy")
    }
}

Por que o ciclo de vida é importante

Erros comuns causados por ignorar o ciclo de vida:

  • Reproduzir um vídeo em onResume, mas esquecer de pausá-lo em onPause — isso consome a bateria
  • Registrar um ouvinte de sensor em onCreate, mas não removê-lo em onDestroy — isso causa um vazamento de memória
  • Não salvar os dados do formulário em onPause — o usuário perde o progresso durante uma ligação telefônica

Salvando o estado: onSaveInstanceState

Quando o usuário gira o telefone, a Activity é destruída e recriada. O estado da interface é perdido.

Salve o estado temporário em onSaveInstanceState(bundle) e restaure-o em onCreate(savedInstanceState).

Salvando e restaurando o estado

Persista os dados durante mudanças de configuração:

class CounterActivity : AppCompatActivity() {

    private var count = 0

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_counter)

        // Restore saved state after rotation
        count = savedInstanceState?.getInt("count") ?: 0
    }

    override fun onSaveInstanceState(outState: Bundle) {
        super.onSaveInstanceState(outState)
        outState.putInt("count", count)
    }
}

Pilha de retorno

O Android gerencia uma pilha de retorno de Activities:

  • Iniciar uma nova Activity coloca-a no topo da pilha
  • Pressionar Voltar remove a Activity do topo da pilha e a destrói
  • A Activity anterior é retomada automaticamente

Por isso, você não deve chamar finish() manualmente, a menos que queira especificamente remover a tela atual da pilha de retorno.

Mudanças de configuração

Qualquer mudança de configuração (rotação, mudança de idioma ou conexão de um teclado) recria a Activity por padrão.

A solução moderna é usar um ViewModel — ele sobrevive às mudanças de configuração e mantém seus dados com segurança. Você aprenderá sobre ViewModel no módulo de Arquitetura.

Verificação rápida

Em qual método do ciclo de vida você deve configurar o layout (chamar setContentView)?

Recapitulação: Activities e ciclo de vida

Agora você entende as Activities do Android:

  • Uma Activity = uma tela do seu aplicativo
  • Ciclo de vida: onCreate → onStart → onResume → onPause → onStop → onDestroy
  • Salve o estado temporário em onSaveInstanceState
  • A rotação destrói e recria a Activity
  • O Android gerencia automaticamente uma pilha de retorno

A seguir: projetando telas com layouts e views.

Perguntas Frequentes

A aula “Activities e Ciclo de Vida” é grátis?

Sim — o texto completo de “Activities e Ciclo de Vida” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Android Academy, atualize para CoddyKit PRO. O curso de Android Academy inclui 7 aulas no total.

O que vou aprender em “Activities e Ciclo de Vida”?

Aprenda o que é uma Activity, compreenda os retornos de chamada do ciclo de vida da Activity (onCreate, onStart, onResume, onPause, onStop, onDestroy) e use ViewBinding. Você pratica Android Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Android Academy?

Nenhuma experiência prévia é necessária. Android Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 7.

Quanto tempo leva a aula “Activities e Ciclo de Vida”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Android Academy?

Sim. Cada aula de Android Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Estrutura do Projeto e Manifesto
  2. Activities e Ciclo de Vida
  3. Layouts e Views
  4. Tratamento da Entrada do Usuário
  5. Intents e Navegação
  6. Fragments
  7. Permissões e Solicitações em Tempo de Execução
← Voltar para Android Academy