Kotlin Multiplatform Conversions at Android Jetpack Scale
summary
Case study claims conversion of several Jetpack libraries to Kotlin Multiplatform at scale, with alpha releases and a Dice Roller sample; tools used include japicmp, binary‑compatibility‑validator, metalava and extensive integration tests. Concrete outcomes: datastore core + okio artifact split to avoid forcing a heavy dependency, Google Truth converted to KMP to let 45,000+ tests run (50,000 Truth usages), and an expect/actual Java-as-actual workaround for JVM compatibility. Results are workable but require source‑compat tooling gaps and manual test scaffolding.
AI-written summary · about
chapters (15)
- 0:00Start
- 4:34Jetpack Alphas
- 6:36Compatibility in Android
- 7:36Compatibility in Jetpack
- 8:55Challenges with compatibility
- 13:33What about @JvmName?
- 17:34binary-compatibility-validator
- 19:40Tracking source compatibility
- 25:32JVM test conversions
- 26:07Requirements for conversions
- 28:22Kotlin Multiplatform "Kruth"
- 32:49Performance is important
- 33:38Benchmarking in Jetpack
- 35:01Jetpack Benchmark
- 37:03Smoothing Future Evolutions
related talks
26mKotlin Multiplatform in an MVVM World
46mGoing Multiplatform with Your Android App
34mKotlin Multiplatform: code sharing without compromise
38mMultiplatfom projects with Kotlin
36mExploring Kotlin Multiplatform
38mBuild a Multiplatform Future with Kotlin
52mIntroducing Kotlin Multiplatform in an existing project
48mEffective Multiplatform Kotlin Development
