пора открыть другой экран? Я использую LiveData, но мне кажется, что это явно не для этого. Можно посылать через LiveData рандомную переменную и потом её обнулять, а в обсервере на экране чекать подходящая ли нам переменная, но это тоже весьма костыльно
колбеком сделать тоже костыльно?
пока что мне кажется, что это самый простой и действенный вариант)
Я на булеан ставил наблюдателя, как ты, собственно, выше и предложил. Так что тоже интересно какое есть более хорошее решение)
Если привыкли к LiveData, то либо SingleLiveEvent, либо обычную, но обнулять значение. Если не проблема юзать Flow, то заюзайте MutableSharedFlow с переопределенным extraBufferCapacity.
да , отличный вариант. Жаль что у SingleLiveEvent не может быть более 1 подписчика.
extraBufferCapacity не даст гарантии одиночного ивента
Можете привести кейс, где это зафейлится?
Почему SharedFlow, а не channel и конвертировать его во Flow?
Да, можно, но мне лень было изучать Channels API, так как с головой хватает обычных cold/hot flows.
Обсуждают сегодня