Sobes.tech
Junior — Middle

¿Cómo se realiza el manejo de errores en los flujos de datos (Flow)?

sobes.tech AI

Respuesta de la IA

En Kotlin Flow, el manejo de errores se realiza mediante el operador catch, que intercepta las excepciones que ocurren en el flujo de datos. Esto permite manejar el error, por ejemplo, registrando un log, reemplazando el elemento con error o finalizando el flujo con una acción determinada.

Ejemplo:

flowOf(1, 2, 0, 4)
    .map { 10 / it } // al dividir por 0 se generará una excepción
    .catch { e -> emit(-1) } // en caso de error, emitimos -1
    .collect { value -> println(value) }

También se puede usar el operador onCompletion para realizar acciones después de que el flujo finalice, incluyendo el manejo de errores.