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
KMP / CMP 詳細解説 + ライブデモ(技育 CAMP アカデミア - KMP/CMP ...
Search
Ryo WATANABE
July 30, 2025
Technology
94
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
KMP / CMP 詳細解説 + ライブデモ(技育 CAMP アカデミア - KMP/CMP 勉強会)
Ryo WATANABE
July 30, 2025
More Decks by Ryo WATANABE
See All by Ryo WATANABE
スクリプトの先へ!AIエージェントと組み合わせる モバイルE2Eテスト
error96num
0
290
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
2
3.6k
Compose Multiplatform 製アプリの OSS ライセンス表示
error96num
0
520
Edge-to-edge「強制」への対応
error96num
2
3.2k
Other Decks in Technology
See All in Technology
Claude Codeで開発以外の業務も爆速化しよう!
minorun365
PRO
12
9.4k
サーバー常駐型の 簡易障害調査AI エージェントを作ってみた話
masayoshi
1
500
データエンジニアの困りごとをDevinと一緒に解消する
10xinc
2
180
Nav2、Nav3 ... はたまた自作?〜 作って理解する Nav3 の設計意図 〜 / Nav2, Nav3 ... or Build Your Own? — Understanding Nav3's design intent by building it from scratch
yanzm
0
130
Level Up Your CDK DX: 5 Tools I’ve Been Building
gotok365
2
170
VPCでもFloatingIPを使いたいんだ
y_kotani
1
140
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
20k
Does an AI Watermark Survive Translation?
machinetranslation
0
510
markdown-poster Introduction
kazamori
0
460
PM領域でのAI Agentの活用
lycorptech_jp
PRO
0
210
書籍『生成AIの安全性入門』の入門
wataoka
0
150
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
12
87k
Featured
See All Featured
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
710
Into the Great Unknown - MozCon
thekraken
41
2.7k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
Navigating Team Friction
lara
192
16k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
660
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.9k
Context Engineering - Making Every Token Count
addyosmani
9
1.1k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
410
Transcript
STORES 株式会社 2025年7月30日(水) 技育 CAMP アカデミア Kotlin Multiplatform / Compose
Multiplatform を活用した モバイルアプリ開発の最前線 KMP/CMP 詳細解説 + ライブデモ
• 渡邊 亮 / naberyo (@error96num) • STORES 株式会社 •
Android エンジニア • キッチンディスプレイ開発で KMP/CMP 活用! • 先週モロッコへ行ってきました 2 自己紹介 2
KMP/CMP開発に必要なもの Xcode JDK Android Studio + KMP Plugin 3
開発に必要なもの 4
プロジェクト作成 5
プロジェクト作成 6
プロジェクト作成 7
デモ1
Source sets androidMain : Android のアプリでしか使わないコード iosMain : iOS のアプリでしか使わないコード
commonMain : すべてのプラットフォームで共有されるコード 9
デモ2
宣言的UI - UIを「何をしたいか」で記述 11
宣言的UI - UIを「何をしたいか」で記述 12
宣言的UI - UIを「何をしたいか」で記述 13
宣言的UI - UIを「何をしたいか」で記述 14
デモ3
Source sets と expect/actual androidMain iosMain commonMain expect fun(プラットフォーム非依存のI/F) actual
fun actual fun Android 固有の API iOS 固有の API 16 実装 実装 参照 参照
Source sets と expect/actual - VideoPlayerの例 androidMain iosMain commonMain expect
fun VideoPlayer actual fun VideoPlayer actual fun VideoPlayer ExoPlayer AVPlayer 17 実装 実装 参照 参照
KMP/CMP を使えば プラットフォーム間でコードを共有しつつ expect / actual で柔軟に実装を切り分けられる 18
参考文献 • Kotlin Multiplatform quickstart | Kotlin Multiplatform Documentation •
Create your Compose Multiplatform app | Kotlin Multiplatform Documentation 19