~/talk

Boosting Compose UI from Sluggish to Snappy

Talkat droidcon New York 2023 · 2023-09-14..09-15· [web-performance, android]

A Tinder-clone card stack shows UI frames exceeding 300 ms against the 16 ms target; GPU rendering bars and Android Studio profilers plus the composition tracing library locate a hot swipeable card composable. Layout Inspector reveals thousands of offscreen cards; fixing a measure/place bug, switching to derivedStateOf, using lambda-based modifiers and deferring state reads, and replacing a List with a persistent immutable list cuts unnecessary recompositions and yields buttery card swipes. Compiler metrics are the final fallback when recomposition sources remain unclear.

AI-written summary · about

  1. 0:00Introduction
  2. 1:48Diagnosing UI jank
  3. 3:53Profiling with Android Studio
  4. 7:24Composition tracing library
  5. 10:12Fixing layout issues
  6. 13:50Understanding Compose phases
  7. 15:15Recomposition basics
  8. 18:00Reducing recompositions
  9. 22:16Lambda modifiers
  10. 26:11Deferring state reads
  11. 30:24Fixing page navigation jank
  12. 31:48Compose compiler metrics
  13. 37:07Stabilizing parameters
  14. 38:51Final performance check
  15. 39:54Key takeaways
  16. 41:59Closing thoughts
~/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.