Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Kotlin Multiplatformで実現するクロスプラットフォームの卓越性
Search
ソニー株式会社
August 05, 2025
Technology
0
9
Kotlin Multiplatformで実現するクロスプラットフォームの卓越性
ソニー株式会社
August 05, 2025
Tweet
Share
More Decks by ソニー株式会社
See All by ソニー株式会社
GitHubを使いこなすためにソニーの開発現場が取り組んでいるプラクティス
sony
0
13
FinOps_の考えをベースにした継続的なコスト改善の取り組み
sony
0
9
ハードとともに歩むアジャイル開発
sony
0
1
Fultterによるクロスプラットフォーム開発_bravia_connect
sony
0
3
コード共通化の取り組み_headphones_connect
sony
0
2
ソニーにおけるプロダクトマネジメント事例紹介
sony
0
10
社内kaggleコミュニティを立ち上げた話
sony
0
2
GraphQLを活用したデータ配信プラットフォームの事例紹介
sony
0
4
ソニーの事例から考えるプラットフォーム開発
sony
0
8
Other Decks in Technology
See All in Technology
「Roblox」の開発環境とその効率化 ~DAU9700万人超の巨大プラットフォームの開発 事始め~
keitatanji
0
120
dipにおけるSRE変革の軌跡
dip_tech
PRO
1
250
LTに影響を受けてテンプレリポジトリを作った話
hol1kgmg
0
340
AIエージェントを現場で使う / 2025.08.07 著者陣に聞く!現場で活用するためのAIエージェント実践入門(Findyランチセッション)
smiyawaki0820
6
880
ビジネス文書に特化した基盤モデル開発 / SaaSxML_Session_2
sansan_randd
0
280
Kiroでインフラ要件定義~テスト を実施してみた
nagisa53
3
330
大規模イベントに向けた ABEMA アーキテクチャの遍歴 ~ Platform Strategy 詳細解説 ~
nagapad
0
200
LLMでAI-OCR、実際どうなの? / llm_ai_ocr_layerx_bet_ai_day_lt
sbrf248
0
450
마라톤 끝의 단거리 스퍼트: 2025년의 AI
inureyes
PRO
1
720
反脆弱性(アンチフラジャイル)とデータ基盤構築
cuebic9bic
3
170
UDDのススメ - 拡張版 -
maguroalternative
1
380
相互運用可能な学修歴クレデンシャルに向けた標準技術と国際動向
fujie
0
230
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Being A Developer After 40
akosma
90
590k
Embracing the Ebb and Flow
colly
86
4.8k
The Language of Interfaces
destraynor
158
25k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
750
Speed Design
sergeychernyshev
32
1.1k
Bash Introduction
62gerente
614
210k
Side Projects
sachag
455
43k
A better future with KSS
kneath
239
17k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
21
1.4k
The Straight Up "How To Draw Better" Workshop
denniskardys
235
140k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Transcript
ΧϦϧɹηϧδΦ TechLead | Sony ιχʔͷKotlin Multiplatform Kotlin MultiplatformͰ࣮ݱ͢ΔΫϩεϓϥοτϑΥʔϜͷӽੑ
About me Engineer Agilist
1. iOS & Android 2. Background 3. Leverage knowledge Requirements
2019
2019 2020 2021 2022 2023 2024 180.000 MAU Fast releases
3 apps
Requirements Decision making Success W/ KMP A Blueprint
Agenda 1. AutoPlay app 2. AutoPlay in “Sony | Sound
Connect” 3. Decision making 4. Key points
1. AutoPlay App with Kotlin Multiplatform
2021 2022 2023 2024 2025 Dev Market Market AutoPlay Dev
Auto Play Supported Devices
AutoPlay Sensing Context Action data trigger
Sensing Context Action Android / iOS Background Hardware Knowhow
Kotlin Multiplatform (KMP) Native UIs Kotlin Multiplatform logic Bytecode LLVM
JavaScript JVM Native JS
expect/actual Common expect fun / class actual fun / class
actual fun / class
expect fun randomUUID: String import java.util.* actual fun randomUUID() =
UUID.randomUUID().toString() import platform.Foundation.NSUUID actual fun randomUUID(): String = NSUUID().UUIDString() Common expect/actual
Requirements 1. iOS & Android 2. Background 3. Leverage knowledge
4. Hardware integration
AutoPlay w/ KMP
• 20,000 MAU • Fast high-quality releases Successes • Build
system • Dev. Environment • Skillset Challenges
2. AutoPlay in Sony | Sound Connect with Compose Multiplatform
None
~2024/10 Architecture Build system Architecture Build system Users
2024/10~ Architecture Architecture Build system Users
Requirements 1. iOS & Android 2. Background 3. Leverage knowledge
4. Hardware integration 5. Simplify building system
Compose Multiplatform https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-multiplatform-and-jetpack-compose.html Jetpack Compose KMP
https://www.youtube.com/watch?v=0L1VFm7o4MU KMP Compose MP
AutoPlay w/ Compose Multiplatform
Code Base Old AutoPlay New AutoPlay
• 2 releases • 155,000+ MAU • Narrow skillset Successes
• NA (too early) Challenges
3. Decision Making and lessons learned
Platform analysis
Sony Adoption 2019 2020 2021 2022 2023 2024 Kotlin 1.3:
Alpha M P KM M introduced (Beta) KM P Stable C om pose iO S Alpha C om pose iO S Beta
Decision Making 1. Use-case based 2. Tooling 3. Ecosystem 4.
Community Experimentation
KMP Adoption https://developers.googleblog.com/en/google-kotlinconf-2024-a-look-inside-multiplatform-development-with-kmp-and-more/
T he State of KMP AutoPlay 1.0 https://blog.jetbrains.com/kotlin/2023/11/kotlin-multiplatform-stable/
4. Key Points
Key Points 1. Use-case fi t w/ KPM & Compose
2. Decision process 3. Experimentation to avoid risk
Just, try it! “Frameworks are just tools”
Q & A