SuperAPI AI 工具集

kotlin-flow

测试与质量

查看项目

更新于 10-16 03:43

技能介绍

用途:该技能用于 Kotlin 响应式编程,围绕 Kotlin Flow 提供知识整理,覆盖冷流与热流、StateFlow、SharedFlow、操作符、流合并与测试等主题。

主要能力:区分冷流与热流,冷流为每个收集者重新开始,热流用于共享状态,例如用 MutableStateFlow 保存状态并通过 asStateFlow 暴露只读 StateFlow。操作符方面涉及 debounce、filter、distinctUntilChanged、flatMapLatest、catch 等,可用于搜索输入等场景;合并方面使用 combine 将多个流组合为单一结果。测试方面使用 Turbine 配合 runTest,通过 test 块与 awaitItem、advanceUntilIdle 断言流的发射顺序与状态。

使用方式:以 Skill("kotlin-flow") 调用该技能。

适用场景:Kotlin 项目中处理异步数据流、UI 状态管理、搜索防抖与结果切换、多数据源合并,以及为 Flow 编写单元测试。

限制与排查:资料给出常见问题及处理方向,如流始终不发射需添加终端操作符(collect、first),UI 中出现过期数据需正确使用 stateIn 或 shareIn。其余细节暂未提供。