Чтобы можно было обсервера подцепить, но само значение не сохранять, а обрабатывать в момент получения.
Сейчас сделал через collect() во viewmodel, назначая событие и сразу же обнуляя его, но это выглядит как костыль. И чтобы не вызывать корутину в фрагменте и не делать там collect()
SharedFlow тебе не подойдёт?
Ну так я в нём и передаю)
Тогда не понял вопроса, там как раз можно подцепить обсервера через onEach и все. Зачем это в live data переводить не совсем понимаю
Если обсервер цепляется прямо к потоку, без необходимости liveData... Надо попробовать
Ещё вопрос, а разве он без корутины в фрагменте будет работать?
Ты по туторам 2018 года делаешь?
При чём здесь вообще какие-то туторы?
Ну во первых не вижу проблемы в корутинах внутри фрагмента, скоуп туда затянуть или создать свой нет проблемы, он в общем-то зачастую и должен отвечать Но sharedflow это горячий поток данных, он работает и без подписчиков
ты пытаешься лайвдату тянуть, которую даже гугл оставил допинывать жаба разарабам, и не в курсе что у фрагмента есть скуп для корутин
Причем тут лайв дата и джава)))
Просто насколько знаю, запускать корутины в фрагменте не лучшая практика, для этого viewmodel... А про sharedFlow я и так написал, что его использую, да, и через него из репозитория отправляю ивенты
при том что она жива чисто из за того что у джабистов нет альтернативы
Она хороша и без джавы ибо написана специально под андроид и под конкретную задачу
Ну да. Тут есть правда. Обычно поэтому у View model свой скоуп можно в нем и отлавливать, вроде как в большинстве случаев это и логично Можно использую Compostable туда данные закидывать, оно умеет обрабатывать горячие потоки
В смысле State из Compose?
Я бы может и перенёс бы проект на compose в будущем, но пока вроде на view работает, пусть и с таким одним вот костылём... Хотелось бы поправить, но ладно
Не не это я так отвлечённо про него сказал Вообще и без него все можно в view model реализовать
Обсуждают сегодня