Novas tentativas e alternativas offline
Recupere-se normalmente de falhas temporárias
Novas tentativas e alternativas offline é uma aula grátis de Kotlin Multiplatform Academy no CoddyKit. Esta é a aula 4 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 Kotlin Multiplatform Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Kotlin Multiplatform Academy inclui 4 aulas no total.
Algumas falhas são temporárias
Um tempo limite geralmente desaparece ao tentar novamente. Trate os erros transitórios como situações que valem uma nova tentativa, não como um beco sem saída definitivo para o usuário.
Tentar novamente os erros certos
Tente novamente apenas os tipos transitórios, como tempos limite da rede. Um erro de análise falhará todas as vezes, portanto repeti-lo apenas desperdiça esforço.
Um ciclo simples de tentativas
Envolva a chamada em um pequeno ciclo que tente algumas vezes. Se finalmente der certo, retorne Success; caso contrário, prossiga até Failure.
repeat(3) {
val r = fetch()
if (r is Success) return r
}Aguardar entre as tentativas
Tentar imediatamente várias vezes raramente ajuda. Adicione um atraso crescente entre as tentativas para dar espaço ao servidor com problemas para se recuperar.
delay(attempt * 500L)Limitar suas tentativas
Nunca repita indefinidamente. Um máximo fixo de duas ou três tentativas evita que o usuário espere sem fim por um serviço realmente indisponível.
Recorrer ao cache
Quando as tentativas se esgotarem, consulte o armazenamento local. Exibir dados um pouco antigos é melhor do que mostrar uma tela vazia e quebrada.
Exibir dados antigos e atualizar depois
Um padrão amigável é stale-while-revalidate: exiba os dados armazenados em cache imediatamente e depois busque silenciosamente dados atualizados em segundo plano.
Informar ao usuário que está off-line
Ao recorrer ao cache, defina uma flag de modo off-line no seu estado, para que a interface possa mostrar uma faixa discreta sobre o conteúdo desatualizado.
As corrotinas tornam tudo mais simples
Como isso é executado em uma função suspend, os atrasos e as tentativas parecem código sequencial simples, sem retornos de chamada nem threads para gerenciar.
suspend fun loadWithRetry(): Result<User>Manter a possibilidade de cancelamento
Respeite o cancelamento: se a tela for fechada durante uma nova tentativa, a concorrência estruturada interromperá o ciclo, evitando vazamentos de trabalho em segundo plano.
Um único ponto de entrada resiliente
Os chamadores apenas invocam loadWithRetry e obtêm o melhor resultado: dados atualizados, dados armazenados em cache ou uma Failure clara, tudo decidido no código compartilhado.
Verificação rápida
Pense em quais falhas merecem uma nova tentativa.
Recapitulação
Você tentou novamente os erros transitórios com espera progressiva, limitou as tentativas, recorreu aos dados armazenados em cache com uma flag de modo off-line e manteve tudo cancelável no código compartilhado. 🔄
Aprenda Kotlin com um tutor de IA — grátis
Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.
- Cursos
- 30
- Aulas
- 120
Perguntas Frequentes
A aula “Novas tentativas e alternativas offline” é grátis?
Sim — o texto completo de “Novas tentativas e alternativas offline” é 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 Kotlin Multiplatform Academy, atualize para CoddyKit PRO. O curso de Kotlin Multiplatform Academy inclui 4 aulas no total.
O que vou aprender em “Novas tentativas e alternativas offline”?
Recupere-se normalmente de falhas temporárias Você pratica Kotlin Multiplatform 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 Kotlin Multiplatform Academy?
Nenhuma experiência prévia é necessária. Kotlin Multiplatform 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 4 de 4.
Quanto tempo leva a aula “Novas tentativas e alternativas offline”?
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 Kotlin Multiplatform Academy?
Sim. Cada aula de Kotlin Multiplatform 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
- Um tipo de resultado selado
- Capture erros de rede e análise
- Mapeie erros para mensagens da interface
- Novas tentativas e alternativas offline