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.lifecyclePor 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
LifecycleOwnerpara 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
- Por que usar um ViewModel?
- Expondo estado a partir do ViewModel
- O ciclo de vida do Android
- collectAsStateWithLifecycle