0Pricing
Android Academy · Aula

O ciclo de vida do Android

Entenda os ciclos de vida da atividade e da composição.

O ciclo de vida do Android é uma aula grátis de Android Academy no CoddyKit. Esta é a aula 3 de 4. 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 4 aulas no total.

O que é o ciclo de vida?

Toda Activity do Android passa por uma série de estados à medida que o usuário abre, deixa e retorna ao seu aplicativo. Esse é o ciclo de vida.

Entendê-lo permite iniciar e interromper o trabalho nos momentos corretos.

Principais callbacks da Activity

Os callbacks clássicos do ciclo de vida da Activity são executados na seguinte ordem:

  • onCreate — a Activity está sendo criada.
  • onStart — tornando-se visível.
  • onResume — em primeiro plano e interativa.
  • onPause / onStop / onDestroy — saindo.

Um fluxo típico

Abrindo um aplicativo: onCreate → onStart → onResume.

Pressionando o botão inicial: onPause → onStop.

Retornando: onRestart → onStart → onResume.

Estados do ciclo de vida versus eventos

A biblioteca Lifecycle do Jetpack modela isso com States (CREATED, STARTED, RESUMED, DESTROYED) e Events (ON_CREATE, ON_START, ...).

Os componentes podem observá-los em vez de substituir callbacks básicos.

LifecycleOwner

Activities, Fragments e hosts do Compose são LifecycleOwners. Eles expõem um objeto Lifecycle que outros componentes podem observar.

val owner: LifecycleOwner = this // an Activity
val lifecycle = owner.lifecycle

Por que isso é importante para os recursos

Muitos recursos só devem estar ativos enquanto a tela estiver visível:

  • Atualizações de localização.
  • Listeners de sensores.
  • Sessões da câmera.

Inicie-os em onStart/onResume e interrompa-os em onStop/onPause para economizar bateria e evitar vazamentos.

Ciclo de vida no Jetpack Compose

Os Composables não têm callbacks de Activity. Em vez disso, têm um ciclo de vida da composição: entram na composição, são recompostos e, por fim, saem dela.

Reagindo à composição com DisposableEffect

DisposableEffect executa a configuração quando um Composable entra na composição e a limpeza quando ele sai.

@Composable
fun Screen() {
    DisposableEffect(Unit) {
        // setup, e.g. register listener
        onDispose {
            // cleanup when leaving composition
        }
    }
}

Observando o ciclo de vida real no Compose

Para reagir aos eventos reais do ciclo de vida da Activity a partir de um Composable, observe o LifecycleOwner com um DefaultLifecycleObserver.

@Composable
fun OnResume(onResume: () -> Unit) {
    val owner = LocalLifecycleOwner.current
    DisposableEffect(owner) {
        val obs = object : DefaultLifecycleObserver {
            override fun onResume(o: LifecycleOwner) = onResume()
        }
        owner.lifecycle.addObserver(obs)
        onDispose { owner.lifecycle.removeObserver(obs) }
    }
}

O ViewModel e o ciclo de vida

Lembre-se: o ViewModel sobrevive a estados individuais do ciclo de vida, como onStart/onStop. Ele só é liberado quando o proprietário desaparece permanentemente. É exatamente por isso que é seguro manter o estado nele.

Reunindo tudo

Uma tela bem estruturada:

  • Mantém o estado durável em um ViewModel.
  • Inicia e interrompe recursos exclusivos da tela visível com consciência do ciclo de vida.
  • Coleta fluxos somente enquanto a interface estiver, no mínimo, em STARTED (na próxima lição).

Verificação rápida

Teste seus conhecimentos sobre o ciclo de vida.

Recapitulação

Você aprendeu:

  • As Activities passam pelos estados CREATED, STARTED, RESUMED e DESTROYED.
  • O Compose tem seu próprio ciclo de vida da composição, gerenciado por meio de DisposableEffect.
  • Observe o LifecycleOwner para reagir aos eventos reais do ciclo de vida.
  • Os ViewModels sobrevivem deliberadamente a esses estados.

Perguntas Frequentes

A aula “O ciclo de vida do Android” é grátis?

Sim — o texto completo de “O ciclo de vida do Android” é 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 4 aulas no total.

O que vou aprender em “O ciclo de vida do Android”?

Entenda os ciclos de vida da atividade e da composição. 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 3 de 4.

Quanto tempo leva a aula “O ciclo de vida do Android”?

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. Por que usar um ViewModel?
  2. Expondo estado a partir do ViewModel
  3. O ciclo de vida do Android
  4. collectAsStateWithLifecycle
← Voltar para Android Academy