嗨,我正在学习Kotlin中的Flow。我正在学习MutableStateFlow和MutableSharedFlow。我尝试通过实际示例来学习MutableStateFlow。但是我无法找到适合使用MutableSharedFlow的示例。我尝试了一些MutableStateFlow。 例如...
MutableSharedFlow 接受3个参数:replay、extraBufferCapacity 和 onBufferOverflow。 replay 和 extraBufferCapacity 的区别是什么? 文档中提到了以下内容: replay - 重新播放给新订阅者的值的数量(...
过去,我在我的聊天和出租车应用程序中使用了LocalBroadcastManager和EventBus,但它们现在已经被弃用或不推荐使用。 我打算用新的数据结构mutablesharedflow或channel来替代它们, 我想知道哪个更适合我的情况?或者可能还有其他数据结构吗?
我有一个登录表单。我使用StateFlow从ViewModel向Activity发送LoginResult(在调用API之后)。在Activity中,如果登录失败,我将显示一个错误对话框。 第一次使用时效果很好,但是从第二次登录失败开始,错误对话框不再显示。我在StateFlow上测试了.va...
最近我一直在使用StateFlow、SharedFlow和Channels API,但在试图将我的代码从LiveData迁移到presentation层的StateFlow时,我遇到了一个常见的问题。 我面临的问题是当我发射我的数据并在viewModel中收集它以便将值设置为mutableS...
如何避免在返回到片段时再次执行collect()代码? ViewModel 类 private val _commitResult = MutableStateFlow<Map<String, Any>>(mapOf()) val commitR...
在我的 ViewModel 中,我正在进行 API 请求,并且使用 StateFlow 和 SharedFlow 与 Fragment 进行通信。在进行 API 请求时,我可以轻松地更新状态流的值,并且成功地在 Fragment 中收集到它。 但是,在进行请求之前,我使用 SharedFlo...