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
81
0
Share
KMP / CMP 詳細解説 + ライブデモ(技育 CAMP アカデミア - KMP/CMP 勉強会)
Ryo WATANABE
July 30, 2025
More Decks by Ryo WATANABE
See All by Ryo WATANABE
スクリプトの先へ!AIエージェントと組み合わせる モバイルE2Eテスト
error96num
0
250
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
2
3.3k
Compose Multiplatform 製アプリの OSS ライセンス表示
error96num
0
460
Edge-to-edge「強制」への対応
error96num
2
3.2k
Other Decks in Technology
See All in Technology
AIプラットフォームを運用し続けるための可観測性
tanimuyk
4
880
インフラが苦手でも大丈夫! 紙芝居 Kubernetes -WWGT 10周年編-
aoi1
1
320
自称宇宙最速で不合格となったAIP-C01にリベンジを果たすべくAIで問題集アプリを作ってみた。
yama3133
0
260
大学生が本気でDatabricksを活用してDiscordサークルをデータ駆動させてみた
phantomjuju
1
310
オンコールの負荷軽減のためのBits Assistant 活用方法 / How to Use Bits Assistant to Reduce the Workload on On-Call Staff
sms_tech
1
360
AI フレンドリーなエラー監視を TypeScript で実現する
shinyaigeek
2
200
Terraformモジュールは、なぜ「魔境」化するのか
hayama17
1
140
コードレビューを制するチームがソフトウェアデリバリーのフローを制す / Beyond Code Review: Distributing Its Responsibilities Across the SDLC
mtx2s
3
560
脅威をエンジニアリングの糧にして:恐怖を乗り越えた先にあったもの / Turn threats into fuel for engineering: what lay beyond overcoming fear
nrslib
1
360
long-running-tasks
cipepser
2
450
Javaコミュニティをもっと楽しむための9箇条
takasyou
0
870
OpenClawとHermesAgentでAI新入社員を作った話
takanoriyanada
0
150
Featured
See All Featured
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
300
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
160
Believing is Seeing
oripsolob
1
140
Designing Powerful Visuals for Engaging Learning
tmiket
1
390
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
55k
sira's awesome portfolio website redesign presentation
elsirapls
0
270
ラッコキーワード サービス紹介資料
rakko
1
3.5M
Producing Creativity
orderedlist
PRO
348
40k
Docker and Python
trallard
47
3.9k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Chasing Engaging Ingredients in Design
codingconduct
0
200
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