~/talk

Optimizing Dagger on Android: Developer Workflow and Runtime Performance

Talkat droidcon NYC 2017 · 2017-09-25..09-26· [android]
links:none on file
slides:none on file

Generated Dagger code causes heavy class loading so component initialization measures about 200 ms first init versus 2 ms subsequent inits; the concrete fixes shown are codegen that inlines factories, using Guava’s Android-optimized collections, and avoiding unnecessary Provider/Lazy and scopes. Practical changes demonstrated: inject instances instead of providers when get() is called once, use bindsInstance to pass singletons without double-check wrappers, prefer component dependencies over subcomponents to compile less, and enable ErrorProne extensions to flag wasteful lazy/provider usage.

AI-written summary · about

  1. 0:00Introduction to Dagger optimization
  2. 1:35Key Dagger concepts explained
  3. 4:22Dependency request lifecycle
  4. 8:37Provider performance impact
  5. 11:09Next Dagger version improvements
  6. 15:50Reducing unnecessary providers
  7. 21:33Reconsidering scoping strategies
  8. 28:06Dagger Android framework
  9. 32:22Faster builds with Dagger
  10. 36:43Component dependencies vs subcomponents
  11. 37:03Summary and Q&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.