HoangNguyen0403

Android Legacy State

Standards for State integration with Views using Coroutines and Lifecycle

HoangNguyen0403 501 148 Updated 4mo ago

Resources

1
GitHub

Install

npx skillscat add hoangnguyen0403/agent-skills-standard/android-legacy-state

Install via the SkillsCat registry.

SKILL.md

Android Legacy State Standards

Priority: P1

Implementation Guidelines

Flow Consumption

  • Rule: ALWAYS use repeatOnLifecycle(Lifecycle.State.STARTED) to collect flows in Views.
  • Why: Prevents crashes (collecting while view is destroyed) and saves resources (stops collecting in background).

LiveData vs Flow

  • New Code: Use StateFlow exclusively.
  • Legacy: If using LiveData, observe with viewLifecycleOwner (Fragment), NOT this.

Anti-Patterns

  • launchWhenX: **Deprecated**: Use repeatOnLifecycle.
  • observe(this): **Leak Risk**: Use viewLifecycleOwner in Fragments.

References