Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

138
Visualizações
No estoy seguro de cómo convertir un Cursor al tipo de retorno de este método después de la actualización de Kotlin a 1.6.0

Estaba usando la biblioteca Android Room en mi proyecto para manipular datos de mi base de datos SQLite y todo funcionaba bien en la versión anterior de Kotlin (1.5.31). Aquí hay una muestra de mi DAO:

 @Dao interface ServersDao { @Query("SELECT * FROM servers ORDER BY connectedDevices, ping ASC LIMIT 1") suspend fun getLeastLoadedServer(): Server @Query("SELECT * FROM servers ORDER BY ping, connectedDevices ASC LIMIT 1") suspend fun getNearestServer(): Server }

Después de actualizar Kotlin a la versión 1.6.0, mi código ya no pudo compilarse y recibo este error:

error: no estoy seguro de cómo convertir un cursor al tipo de retorno de este método (java.lang.Object). public abstract java.lang.Object getLeastLoadedServer(@org.jetbrains.annotations.NotNull()

Después de buscar un poco, leí que se debía a la suspensión de funciones, así que eliminé la palabra clave de suspensión de mi DAO y comencé a recibir el error obvio:

java.lang.IllegalStateException: no se puede acceder a la base de datos en el subproceso principal, ya que podría bloquear la interfaz de usuario durante un largo período de tiempo.

Incluso si estuviera llamando a esas funciones desde una corrutina IO.

También leí el registro de cambios de Kotlin 1.6.0, que no ayudó mucho.

Cualquier ayuda es apreciada, gracias.

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Usar Android Room 2.4.0 resolverá el problema.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda