🎁 Si aún no te decides sobre si Kotlin es el lenguaje que deberías aprender, te animo a que te apuntes a mi masterclass gratuita 👉 bit.ly/3t0Gypq
@rodrigocastrillonrestrepo34543 жыл бұрын
Que buen vídeo... El conflate() me soluciona los múltiples clicks que se pueden hacer por error sobre un botón.
@devexpert_io3 жыл бұрын
Gracias Rodrigo!
@UskoKruM20103 жыл бұрын
Muy bueno, Antonio! Saludos! 👋🏻
@devexpert_io3 жыл бұрын
Gracias!
@karlos140289 Жыл бұрын
Un apunte respecto al código que has mostrado. Si has metido ambos collect{} dentro del mismo scope, siendo collect{} una función que se queda suspendida, el segundo nunca llegaría a ejecutarse, a no ser que el primero se cancelase. Los collect siempre tienen que lanzarse en diferentes scopes para que eso no suceda. 😉
@devexpert_io Жыл бұрын
Gracias! En qué minuto? Por revisarlo, es posible que lo hiciera mal. Lo que es necesario es lanzarlo en distintas corrutinas, el scope en principio puede ser el mismo
@karlos140289 Жыл бұрын
@@devexpert_io De nada. Minuto 6.38. Cierto, el scope es el encargado de lanzar las corrutinas con el launch, me he explicado mal. Dentro de cada launch es donde deberia recolectarse ese Flow ya que es bloqueante, hasta que se cancele o se haga un first(), por ej. Un saludo
@devexpert_io Жыл бұрын
@@karlos140289 entonces sí, me confundiría al escribir el código. Es exactamente como dices
@soygabimoreno3 жыл бұрын
¡Está superguay! No conocía conflate(). Qué bien te explicas, Antonio... ¡así da gusto! 😊
@devexpert_io3 жыл бұрын
Muchas gracias compañero!
@jesusdanielmedinacruz96983 жыл бұрын
Me gustaría ver la librería de rxjava que mencionaste
@devexpert_io3 жыл бұрын
La de RxBinding es esta: github.com/JakeWharton/RxBinding Y su equivalente en Flows: github.com/ReactiveCircus/FlowBinding
@activoysaludable3 жыл бұрын
Buen vídeo crack
@devexpert_io3 жыл бұрын
Gracias!
@nonofce3 жыл бұрын
Excelente Antonio. Entonces servicios como el FusedLocationProvider o el de FireStore podriamos trabajarlos con Flows para obtener los updates, con el uso del callbackFlow ? Como se llama la libreria que mencionas?
@devexpert_io3 жыл бұрын
Sí. A cuál te refieres? A la que es equivalente a RxBindings?
@nonofce3 жыл бұрын
@@devexpert_io Si, esa misma.
@alejandro.p3 жыл бұрын
Sí. De hecho hay una página de la documentación en la que pone un fragmento de código usando callbackFlow con Firestore y yo lo he usado para un proyecto. Si te interesa puedo buscar el link
@nonofce3 жыл бұрын
Te lo agradeceria.
@alejandro.p3 жыл бұрын
@@nonofce developer.android.com/kotlin/flow Es en esta misma al final del todo
@drackon1995 Жыл бұрын
Excelente video, pero tengo un problema, yo lo aplique para un boton y si le pico varias veces no hace lo que mencionas de solo tomar en cuanta un solo click si no que si lo hace repetidas veces, como se podria solicionar eso? Un saludo desde Mexico.
@devexpert_io Жыл бұрын
Investiga por ahí la función debounce() de los flows
@car2000313 жыл бұрын
Tengo una duda, si pongo el conflate en el onScrolled esto no haría que por ejemplo si logro pedir las páginas 1 2 3 4, al final despues de terminar la petición de la página 1 después de eso no iria a la 4? ya que el conflate solo coje el ultimo valor? o estoy mal en algo
@devexpert_io3 жыл бұрын
Depende de cómo tengas el scroll, pero en principio no vas a poder hacer scroll de las páginas que no haya ha cargadas. Si implementas un scroll que sepa de antemano cuantos elementos hay, entonces sí hay que tener más cuidado porque podrías hacer un scroll muy rápido y perderse alguna página
@car2000313 жыл бұрын
@@devexpert_io ¡Gracias por la respuesta! Saludos! 👋🏻
@codekko9 ай бұрын
En jetcpack compose como se haria?:(
@devexpert_io9 ай бұрын
Compose ya es reactivo, así que en principio estas cosas no hacen mucha falta. Pero el callbackFlow sirve mucho también en la parte back, si por ejemplo usas una API de alguna librería que solo ofrece callbacks y no tiene soporte para corrrutinas.