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
compose-hot-reload を試そうとした話
Search
Takuji Nishibayashi
June 04, 2025
Technology
160
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
compose-hot-reload を試そうとした話
Takuji Nishibayashi
June 04, 2025
More Decks by Takuji Nishibayashi
See All by Takuji Nishibayashi
CameraX使ってみた
takuji31
0
310
kotlinx.datetime 使ってみた
takuji31
0
1.1k
HiltのCustom Componentについて
takuji31
0
380
java.timeをAndroidで使う
takuji31
0
200
KSPを使ってコード生成
takuji31
0
480
Kotlin Symbol Processing API (KSP) を使って Kotlin ア プリケーションの開発を効率化する
takuji31
1
3.2k
kotlinx.serialization
takuji31
0
700
kanmoba-returns-02.pdf
takuji31
0
300
AndroidXとKotlin Coroutines
takuji31
0
440
Other Decks in Technology
See All in Technology
穢れた技術選定について
watany
17
5.6k
Terraform共通モジュールをチーム横断で“変えられる”運用へ ― リリースと適用の分離
kekke_n
1
3.4k
誤解だらけの開発生産性 / Myths and Misconceptions about Developer Productivity
i35_267
2
810
発表と総括 / Presentations and Summary
ks91
PRO
0
140
ボーイスカウトルールでメモリやスキルを改善しよう
azukiazusa1
4
1.5k
カードゲーム作りが教えてくれた プロダクトオーナーシップ
moritamasami
0
110
「AIに依存している」と 「AIを使いこなしている」の違い
k8yasuma
0
120
SREとQA 二人三脚で進めるSLO運用/sre-qa-slo
sugitak
0
950
Foxgloveについて 実際にExtensionを開発して公開するまでの話 / About Foxglove: The Story of Developing and Releasing an Extension
ry0_ka
0
300
変更し続けられるシステムをどう保つか — AI時代のSSoTという設計原則
kawauso
0
140
ガバナンスの「ちょうどいい落とし所」を探れ!開発スピードを妨げない運用判断の勘所 / SRE NEXT 2026
genda
1
250
ファミコンでPHPを動かす / PHP on the Famicom
tomzoh
2
430
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
Unsuck your backbone
ammeep
672
58k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
220
30 Presentation Tips
portentint
PRO
1
350
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.3k
Music & Morning Musume
bryan
47
7.3k
How to Talk to Developers About Accessibility
jct
2
400
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
750
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Transcript
compose-hot-reload を試そうとした話 関西モバイルアプリ研究会 A #8 @takuji31
自己紹介 西林 拓志( にしばやし たくじ) Twitter/GitHub takuji31 株式会社 TRAILBLAZER (6/1~)
Android (2009 〜) Kotlin (2014 〜) 1
Compose 使ってますか? 2
Flutter 使ってますか? 3
Flutter の利点でよく言われるのが 4
Hot Reload 5
Dart ファイルを書き換えて保存すると即反映 6
Compose でもできるようになったよ 7
JetBrains/compose-hot-reload 8
compose-hot-reload Compose Multiplatform 上で動作 Desktop target が必要 Kotlin 2.10.20 以上
9
セットアップ 10
build.gradle.kts plugins { kotlin("multiplatform") version "2.1.21" kotlin("plugin.compose") version "2.1.21" id("org.jetbrains.compose")
id("org.jetbrains.compose.hot-reload") version "1.0.0-alpha10" } 11
settings.gradle.kts plugins { id("org.gradle.toolchains.foojay-resolver-convention") version "0.10.0" } 12
起動方法 13
IDE から Run 14
./gradlew jvmRunHot --mainClass "MainClassName" 15
Desktop target が必要 16
→ 試せるアプリがない 17
仕方ないので新規プロジェクトを作る 18
IntelliJ IDEA に Kotlin Multiplatform プラグインを入 れる 19
20
21
22
仕方ないので公式ドキュメントを眺める 23
App fun main() = application { Window( onCloseRequest = ::exitApplication,
alwaysOnTop = true, title = "composedemo", ) { App() } } 24
Greeter Button(onClick = { showContent = !showContent }) { Column
{ Text(Greeting().greet()) } } 25
commonMain の Greeting.kt fun greet(): String { return "Hello!" }
26
# 27
https://www.jetbrains.com/help/kotlin- multiplatform-dev/compose-hot-reload.html 28
Thank you 29