Slide 1

Slide 1 text

RIO (Ryosuke Shimizu) KMP × Kotlin 2.3 How Android Got Slower While iOS Builds Improved by 47%

Slide 2

Slide 2 text

Self Introduction My name is RIO @rioX432 ・Disney ・Chiikawa ・HoloLive ・Game Streaming ・Comfy UI etc RIO / Mobile App Engineer Avvy Avatar Live Streaming App

Slide 3

Slide 3 text

Sharing Domain Logic with KMP Developing the live streaming app Avvy persona-domain-kmm Sharing 25 Repositories / 33 UseCases For iOS XCFramework ↓ SPM Distribution For Android AAR ↓ GitHub Packages Distribution

Slide 4

Slide 4 text

Challenges Before Upgrade Slow XCFramework Builds Average 14.3 min, Max 28 min Delays iOS integration after KMM merges • • AGP Compatibility Chain AGP 9 requires Kotlin 2.2.10 Called a "Disaster" on Reddit 219 upvotes) Complete DSL revamp, Variant API removed, KMP coexistence restricted • • • Blocked Dependencies Kotlin 2.0.20 environment QRCode and Kase64 require Kotlin 2.1, preventing updates • •

Slide 5

Slide 5 text

XCFramework ビルドが遅い 平均 14.3分、最大 28分 KMMマージ後のiOSへの 取り込みが遅れる • • AGP互換性の連鎖 AGP 9がKotlin 2.2.10を要求 Redditで "Disaster" と呼ばれる (219 upvotes) DSL全面刷新、Variant API 廃止、KMP共存制限 • • • 依存ライブラリが ブロック Kotlin 2.0.20環境 QRCode, Kase64がKotlin 2.1を 要求しアップデート不可に • •

Slide 6

Slide 6 text

Upgrade Details Library Before After Kotlin 2.0.20 2.3.20 Ktor 2.3 3.4 AGP 8.5 8.13 Gradle 8.9 8.13

Slide 7

Slide 7 text

iOS: 47% Speedup Measured across 87 GitHub Actions runs Highly reliable improvement results based on actual measurement data

Slide 8

Slide 8 text

iOS: Why It Got Faster linkReleaseFramework sped up by 46% from 7m 38s to 4m 07s The most critical step, accounting for 90% of the total build time

Slide 9

Slide 9 text

But for Android...

Slide 10

Slide 10 text

Android: Why It Got Slower compileKotlin 30s 43% K2 JVM regression / YouTrack KT81883 Unresolved) Configuration 26s 32% KSP remains almost unchanged → Not caused by Ktor 3

Slide 11

Slide 11 text

Android: Why It Got Slower

Slide 12

Slide 12 text

Summary Kotlin 2.3 is a must-have for KMP projects iOS ↓47% — Huge impact, cutting CI time in half Android: ↑30s — Acceptable trade-off, waiting for KT81883 fix Stay ahead of the curve for the AGP 9 migration Understand the trade-offs

Slide 13

Slide 13 text

To you out there thinking, “The Avvy team sounds interesting!” Avvy is a service that’s just getting started. There are so many opportunities to take on new challenges and create value right now, while we’re still in our early stages. We look forward to receiving your application. In Conclusion To view current job openings and apply, click here! https://anotherball.notion.site/open-positions