Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

238
Vistas
flowWithLifecycle(lifecycle, Lifecycle.State.STARTED) no detiene los flujos mientras la aplicación está en segundo plano

Estoy tratando de observar el resultado de View Collection y los flujos ascendentes se detuvieron . Pero viewModel.testFlow aún se recopila mientras la aplicación está en segundo plano. ¿Por qué no puedo observar que se detiene la recopilación? ¿Estoy observando algo mal?

Ver modelo:

 val testFlow = flow<Int> { for (i in 1..100) { delay(1000) Timber.e("testFlow: EMIT = $i") emit(i) } }

Actividad:

 override fun onViewCreated() { lifecycleScope.launch { viewModel.testFlow .flowWithLifecycle(lifecycle, Lifecycle.State.STARTED) .collect { Timber.d("testFlow: $it Collected") } } } override fun onActivityPaused(activity: Activity) { super.onActivityPaused(activity) Timber.e("testFlow: onActivityPaused") }

Registros Diagrama de ciclo de vida

https://medium.com/androiddevelopers/a-safer-way-to-collect-flows-from-android-uis-23080b1f8bda

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Está utilizando el estado Lifecycle.State.STARTED para comenzar a observar Flow , el método correspondiente de la Activity cuando se detiene la emisión es onStop() . Si se llama al método onStop() de Activity , la emisión y la recolección se detendrán.

Si desea dejar de emitir y recopilar datos cuando se llama al método onPause , puede usar el estado Lifecycle.State.RESUMED .

Cuando la aplicación pasa a segundo plano, se llama al método onStop() de Activity y cuando se usa el estado Lifecycle.State.STARTED para observar el Flow , debería ver que se detiene la emisión y la recolección.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda