Описание тега kotlin-sharedflow
2
ответа
Преобразование LiveData в StateFlow / SharedFlow
Каков эквивалентный код для этого преобразования данных в реальном времени в StateFlow / SharedFlow? val myLiveData: LiveData<MyLiveData> = Transformations .switchMap(_query) { if (it == null) { AbsentLiveData.create() } else { repository.load…
11 фев '21 в 09:55
0
ответов
Android - MutableSharedFlow не удалось собрать новые значения с несколькими подписчиками
Я хочу создать модель общего представления для связи MainActivity с фрагментами. Я решил использовать поток обмена для управления событиями. private val _sharedChannel: MutableSharedFlow<SharedEvent> = MutableSharedFlow( replay = 0,extraBuffer…
12 апр '21 в 01:45
1
ответ
Работа комбайна Kotlin SharedFlow. Поведение zip в конкретной ситуации
Я совмещаю два а затем выполнение длительной рабочей операции. Вначале я знаю состояние, поэтому я передаю «начальное значение» для обоих потоков. После этого пользователь может передавать в любой поток. Оба потока в основном независимы, но в опреде…
14 апр '21 в 17:07
0
ответов
SharedFlow, собранный с Java, не работает
У меня есть небольшой набор действий, которые мне нужно перезапустить при определенных событиях, сгенерированных в фоновом режиме. Поскольку это будет краткосрочный обходной путь, я подумал, что наименее инвазивным способом было бы иметь общий поток…
21 май '21 в 11:54
1
ответ
Когда следует собирать события SharedFlow в жизненном цикле фрагмента
Я подумал, что собирать данные SharedFlow на onViewCreated - это нормально. Но когда я заменяю фрагмент n раз, а затем запускаю какое-то событие в SharedFlow, он выдает мне событие n раз вместо одного события. Я исправил, как я помещаю свой код в on…
08 июн '21 в 19:16
3
ответа
SharedFlow в проекте Android не работает должным образом
Я пытался передать события из пользовательского интерфейса в viewModel, используя sharedFlow, это мой класс viewmodel. class MainActivityViewModel () : ViewModel() { val actions = MutableSharedFlow<Action>() private val _state = MutableStateFl…
19 июн '21 в 09:19
5
ответов
Последнее значение StateFlow снова собирается в пользовательском интерфейсе
Итак, в последнее время я работал с API StateFlow, SharedFlow и Channels, но я борюсь с одним распространенным вариантом использования, пытаясь перенести свой код из LiveData в StateFlow на уровне представления. Проблема, с которой я сталкиваюсь, за…
06 июл '21 в 19:38
1
ответ
LiveData горячая или холодная?
Мы знаем, что StateFlow и SharedFlow популярны. StateFlow - это горячий поток - он остается в памяти до тех пор, пока поток собирается или пока существуют любые другие ссылки на него из корня сборки мусора. SharedFlow - это горячий поток, который пе…
13 июл '21 в 08:27
2
ответа
Как сделать так, чтобы подписчик на kotlin sharedflow выполнял операции параллельно?
У меня есть соединение с устройством Bluetooth, которое передает данные каждые 250 мс. В моей модели просмотра я хочу подписаться на указанные данные, запустить некоторый код приостановки (для выполнения которого требуется примерно 1000 мсек), а зат…
10 авг '21 в 17:53
2
ответа
Как создать механизм опроса с сопрограммами kotlin?
Я пытаюсь создать механизм опроса с использованием сопрограмм kotlin и хочу остановиться, когда нет подписчиков, и активен, когда есть хотя бы один подписчик. Мой вопрос, это sharedFlow правильный выбор в этом сценарии, или я должен использовать cha…
15 июл '21 в 20:22
0
ответов
Бросить исключение в viewModelScope, но поймать его
Итак, у меня есть SharedFlow, который в определенном случае что-то испускает. В другой момент у меня есть блок try-catch, и я хочу пропустить дальнейшее выполнение блока try, только если Flow что-то собирает во время выполнения. В то же время я не х…
21 авг '21 в 15:33
1
ответ
как избежать повторения повторенияOnLifecycle снова и снова при возобновлении фрагмента
как я могу избежать повторного выполнения кода collect{} при возвращении к фрагменту. ViewModel класс private val _commitResult = MutableStateFlow<Map<String, Any>>(mapOf()) val commitResult: StateFlow<Map<String, Any>> = _co…
10 сен '21 в 11:14
1
ответ
Как избежать состояния гонки в FragmentManager?
Моя цель - разрешить только один экземпляр одного и того же фрагмента диалога в стеке фрагментов. Текущее условие триггера исходит от SharedFlow и может запускаться так часто, как 7ms отдельно между значениями. Вот что я пробовал: Размещение кода в …
23 ноя '21 в 09:40
1
ответ
SharedFlow не будет передавать значение подписчику во фрагменте (сбор)
Я хочу использовать SharedFlow вместо того StateFlow потому что первый не требует начального значения ViewModel : val photosPaginData = photoRepository.getPhotosPagingData() // Flow<PagingData<Photo>> .cachedIn(viewModelScope) .shareIn(v…
24 ноя '21 в 12:15
0
ответов
Android. SharedFlow для обновления состояния
Можно ли подписаться на изменения состояния SharedFlow в результате различных действий. Например, у меня есть Activity A и Activity B. Внутри Activity BI необходимо получить некоторые данные, и когда я вернусь к Activity A, экран должен быть обновле…
15 дек '21 в 16:55
1
ответ
Как получить предыдущее значение из SharedFlow после воссоздания действия/изменения конфигурации в Jetpack Compose?
Предположим, у меня есть ScanActivity используя реактивный ранец, который может сканировать штрих-код, результат будет показан в TextFieldи результат сохранится от изменения конфигурации (например, поворот экрана). я не буду использовать StateFlow п…
27 янв '22 в 07:01
1
ответ
SharedFlow.last() никогда не возвращается
У меня есть общий поток со значением воспроизведения, равным единице. Но когда я пытаюсь получить доступ к последнему переданному значению, вызов никогда не возвращается, в то время как first() возвращает. Вот мой код: val game = GameSettingsReposit…
26 янв '22 в 22:34
2
ответа
Использование SharedFlow в Android kotlin
Привет, я изучаю поток в Котлине. Я изучаю MutableStateFlow и MutableSharedFlow . Я пытался изучить MutableStateFlow на примере реального мира. Но я не могу получить пример MutableSharedFlow , где он больше подходит. Я попробовал немного MutableStat…
10 фев '22 в 14:47
0
ответов
Использование MutableSharedFlow в сочетании со стандартным потоком
Я не уверен, как я могу решить эту проблему. У меня есть переменная, в которой я храню combineпоток. Мне нужно объединить MutableSharedFlow и Flow. Это код, который я использую val users = combine( reloadUsers, nicknameQuery.asFlow() ) { reloadUsers…
29 мар '21 в 18:45
1
ответ
MutableSharedFlow — разница между replay и extraBufferCapacity
MutableSharedFlow принимает 3 параметра: replay, extraBufferCapacity и onBufferOverflow. В чем разница между replay и extraBufferCapacity? В документации упоминается следующее: replay - количество значений, воспроизводимых новым подписчикам (не може…
01 мар '22 в 13:21