~/talk

AndroidX Lifecycle's Path to Multiplatform

Talkat droidcon Berlin 2024 · 2024-07-03..07-05· [kotlin, android]
slides:none on file

AndroidX Lifecycle moves to Kotlin Multiplatform by extracting shared logic (a new viewModelProviderImplementation) while keeping Android-only constructors and factories for binary compatibility, introduced a new create method to avoid breaking synthetic @JvmOverloads constructors, and duplicates get/factory signatures to bridge java.lang.Class vs KClass. CI uses metalava and the Kotlin binary compatibility validator to catch API changes. Timeline runs Jan–May 2024 with Navigation KMP alpha unblocked; kotlin.reflect.full is avoided and custom expect/actual sync and scope fallbacks are implemented and tested.

AI-written summary · about

  1. 0:00AndroidX Lifecycle KMP intro
  2. 1:30KMP support levels
  3. 2:55Lifecycle KMP stable timeline
  4. 3:37Lifecycle API challenges
  5. 7:16ViewModelProvider migration issues
  6. 10:48Public API changes in KMP
  7. 12:11Java type compatibility
  8. 13:36Reflection and platform APIs
  9. 15:44Expect/actual for ViewModelProvider
  10. 18:55ViewModelProvider strategy
  11. 20:59ViewModel addClosable migration
  12. 22:00ViewModel sync in KMP
  13. 24:52Sync APIs per platform
  14. 25:54ViewModelScope and dispatchers
  15. 27:42Key takeaways
~/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.