用途:在 Android 上用 XML Views 配合 ViewModel 管理状态时,提供基于协程与 Lifecycle 的集成规范,属于 legacy(传统 View 体系)状态处理,优先级为 P1(高)。
主要能力与规则:
- Flow 消费:始终使用 repeatOnLifecycle(Lifecycle.State.STARTED) 收集 flow。原因是避免视图已销毁仍收集导致的崩溃,并在后台停止收集以节省资源。
- LiveData 与 Flow 取舍:新代码只用 StateFlow;若沿用 LiveData,Fragment 中用 viewLifecycleOwner 观察,而不是 this。
- 反模式:不要用已废弃的 launchWhenStarted/launchWhenResumed,改用 repeatOnLifecycle;Fragment 中不要 observe(this),应使用 viewLifecycleOwner 以避免生命周期泄漏。
使用方式:资料提供了 Flow Consumption Template 作为参考模板,但未给出具体代码内容与安装命令,暂未提供。
适用场景:维护使用 XML Views 的 Android 项目、迁移或新写 ViewModel 状态收集逻辑、排查生命周期相关的崩溃与泄漏时参考。
限制:资料仅含上述规则与参考项,未提供价格、平台支持、完整示例、安装步骤或效果数据,暂未提供。