~/talk

A Small Leak Can Sink A Great Ship

Talkat droidcon Berlin 2023 · 2023-07-05..07-07· [security, android]
slides:none on file

Memory leaks silently drive heap growth until short GCs (2–5 ms) give way to stop‑the‑world large GCs (50–100 ms) and eventual OOMs; detection is automated by LeakCanary 2 (rewritten in Kotlin) which watches destroyed activities/fragments, waits thresholds (5 retained when visible, 1 in background), triggers heap dumps, and analyzes with Shark to produce leak traces. The workflow includes a leak re‑upload service that logs traces as non‑fatal errors via Crashlytics.recordException, surfaces counts in Crashlytics, and wires to CI, Slack and Jira.

AI-written summary · about

  1. 0:00Introduction
  2. 1:30What is a memory leak
  3. 2:56App memory structure
  4. 7:35Android memory management
  5. 13:16Impact of memory leaks
  6. 15:02Detecting memory leaks
  7. 16:30LeakCanary 2 overview
  8. 21:27Integrating LeakCanary
  9. 23:54Leak detection in tests
  10. 24:37Automating leak reporting
  11. 26:44Firebase Crashlytics setup
  12. 29:35Best practices to avoid leaks
  13. 30:40Closing 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.