Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
1
resposta

Error Cannot access database on the main thread

Fala galera, para quem estiver fazendo essa parte do curso e tomar o erro abaixo:

java.lang.IllegalStateException: Cannot access database on the main thread since it may potentially lock the UI for a long period of time.

A documentação afirma que se não for especificado o Dispatcher é utilizado o Default (basicamente vai utilizar a quantidade de threads disponiveis do aparelho para executar as tarefas):

If the context does not have any dispatcher nor any other ContinuationInterceptor, then Dispatchers.Default is used.

Código da solução:

        viewModelScope.launch(Dispatchers.IO){
            val contatos = contatoDao.buscaTodos()
            _uiState.value = _uiState.value.copy(
                contatos = contatos
            )
        }
1 resposta
solução!

Oi Pablo, tudo bem?

Muito obrigada por compartilhar com a gente a solução encontrada! Com certeza vai ajudar outras pessoas, parabéns por contribuir com a comunidade.

Um abraço e bons estudos.