sábado, 28 de julio de 2018

El extraño caso de MessagingCenter en Xamarin.Forms

Utilizando MessagingCenter en un proyecto Xamarin.Forms me encontre con algunos comportamientos no deseados, para verificarlos cree un proyecto muy sencillo en el cual pude reproducir el problema, basicamente, se seguia enviando el mensaje a instancias anteriores de la clase que se subscribia

Envie la consulta al foro de xamarin en donde me comentaron que una posible solucion era utilizar el subscribe / unsubscribe en los overrides de los eventos OnAppearing / OnDisappearing
Esto funciono perfectamente, el codigo de ejemplo se encuentra en este repo de github

La documentacion para mi gusto no deja suficientemente claro la necesidad del unsubscribe, ya que yo asumi que la instancia subscripta al cerrar la vista desapareceria, pero al parecer, la referencia del subscribe la mantiene en memoria y sigue recibiendo los mensajes

No hay comentarios:

Publicar un comentario