~/talk

Tying UI and Data Lifecycles at the Compilation Stage

Talkat droidcon New York 2025 · 2025-06-25..06-26· [frontend-architecture, android]
links:none on file
slides:none on file

Shows how annotated composables become real runtime scopes by wrapping function bodies to create a lifecycle owner and ViewModelStoreOwner, using currentCompositeKeyHash for stable keys and a parent ViewModel container to survive configuration changes. Disposal logic detects temporary versus permanent removal by checking parent resumed/visibility and uses remember/onForgotten hooks. Implementation uses a scoped composable pattern and a Kotlin compiler plugin to transform code at compile time so per-item view models are created and cleared correctly.

AI-written summary · about

  1. 0:00Fine-grained composable scoping
  2. 1:04Understanding scoping
  3. 3:52Activity/fragment scoping limits
  4. 7:43Building composable scope
  5. 10:56ViewModel store in composables
  6. 14:44Lifecycle events for composables
  7. 17:14Electronics item example
  8. 19:46UI and data lifecycles at compile time
  9. 23:42Benefits of fine-grained scoping
  10. 24:35Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.