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
Wear OSアプリ開発Tips with Jetpack Compose
Search
Kenichi Kambara
June 14, 2022
Technology
0
490
Wear OSアプリ開発Tips with Jetpack Compose
Engineer LT 1の発表資料です。
#EngineerLT
#WearOS
#androidjo
Kenichi Kambara
June 14, 2022
Tweet
Share
More Decks by Kenichi Kambara
See All by Kenichi Kambara
[FlutterTokyo#10]In-App Language Switching in Flutter
korodroid
0
17
[potatotips #92]Integrating Quick Settings Tiles into Your Android App
korodroid
1
120
[ABC2025Spring]Code Less, Build More: A Practical Guide to Mobile Apps with Generative AI
korodroid
0
190
[DevTalksRomania]Building Augmented Reality Experiences with Flutter and AI-Powered Development
korodroid
0
14
[FlutterNinjas]Adapting Flutter App UX for Users Across the World
korodroid
0
44
[FlutterTokyo#6]Navigating Flutter Upgrades
korodroid
0
68
[DevFestTokyo]Accelerating Flutter App Development Using Generative AI
korodroid
2
900
[DevFestMilano]Enhancing Flutter Apps UX for Global Users
korodroid
0
48
[mobile #15]UX Improvements on Flutter Apps Part 5
korodroid
0
61
Other Decks in Technology
See All in Technology
衝突して強くなる! BLUE GIANTと アジャイルチームの共通点とは ― いきいきと活気に満ちたグルーヴあるチームを作るコツ ― / BLUE GIANT and Agile Teams
naitosatoshi
0
270
実運用で考える PGO
kworkdev
PRO
0
120
「魔法少女まどか☆マギカ Magia Exedra」での負荷試験の実践と学び
gree_tech
PRO
0
310
Lessons from CVE-2025-22869: Memory Debugging and OSS Vulnerability Reporting
vvatanabe
2
110
イオン店舗一覧ページのパフォーマンスチューニング事例 / Performance tuning example for AEON store list page
aeonpeople
2
370
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
30k
知られざるprops命名の慣習 アクション編
uhyo
11
2.8k
LLM翻訳ツールの開発と海外のお客様対応等への社内導入事例
gree_tech
PRO
0
300
AIエージェントの活用に重要な「MCP (Model Context Protocol)」とは何か
masayamoriofficial
0
230
つくって納得、つかって実感! 大規模言語モデルことはじめ
recruitengineers
PRO
30
11k
Jaws-ug名古屋_LT資料_20250829
azoo2024
3
190
AIエージェント就活入門 - MCPが履歴書になる未来
eltociear
0
670
Featured
See All Featured
BBQ
matthewcrist
89
9.8k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
51
5.6k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Six Lessons from altMBA
skipperchong
28
4k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
Faster Mobile Websites
deanohume
309
31k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Transcript
Wear OSΞϓϦ։ൃTips with Jetpack Compose 2022.06.14 ਆݪ ݈Ұ (@korodroid) Engineer
LT #1
2 About me ਆݪ ݈Ұ (@korodroid) •Mobile App Development •Speeches
(e.g. 9 International confs.) •Writings (e.g. 6 Dev Books) •[Of fi cial] Evangelist at NTT TechnoCross •[Private] iplatform.org
Agenda •Wear OS ͷ࠷৽τϐοΫ(։ൃऀ͚) •Wear OS ΞϓϦ։ൃTips with Jetpack Compose
Source: Google I/O 2022 Keynote / Developer Keynote / Wear OS Session Android Developers Blog
Wear OS Topics from I/O 2022 (։ൃऀ͚:ൈਮ)
Compose for Wear OS Input components Dialogs Page Indicator Progress
Indicator Navigation
Compose for Wear OS ࣮ྫ(͋ͱͰվળ͍͖ͯ͠·͢) @Composable fun ContactsScreenV1() { LazyColumn
{ item { ListHeader { Text(text = "Contacts") } } items(20) { Chip( icon = { Icon( Icons.Rounded.Face, contentDescription = "Contacts", ) }, label = { Text("HogeHoge Tarou $it") }, colors = ChipDefaults.primaryChipColors(), onClick = { }, ) } } }
7 Wear OS ΞϓϦ։ൃTips with Jetpack Compose
8 ։ൃڥ IntelʹՃ͑ɺApple Siliconαϙʔτ Wear OS ։ൃʹ͓͢͢Ί
9 Wear OS ϓϩδΣΫτ࡞ Jetpack ComposeͰ։ൃ͢Δ߹
10 Live Demo💪
Tips1: Live Editͷઃఆ(Electric Eel)
Tips2: ϓϨϏϡʔػೳ(Electric Eel)
[UIվળͷલʹ…]Wear OSͱMobileͷҧ͍(ྫ) Wear OS (androidx.wear.*) Mobile (androidx.*)
androidx.wear.compose:compose-material androidx.wear.compose:compose-navigation androidx.compose.foundation:foundation androidx.wear.compose:compose-foundation androidx.compose.material:material androidx.navigation:navigation-compose androidx.compose.foundation:foundation ref: https://developer.android.com/training/wearables/compose
@Composable fun ContactsScreenV2() { ScalingLazyColumn { item { ListHeader {
Text(text = "Contacts") } } items(20) { Chip( icon = { Icon( Icons.Rounded.Face, contentDescription = "Contacts", ) }, label = { Text("HogeHoge Tarou $it") }, colors = ChipDefaults.primaryChipColors(), onClick = { }, ) } } } Tips3: UIվળྫ1(ScalingLazyColumnͷஔ͖͑)
@OptIn(ExperimentalWearMaterialApi::class) @Composable fun ContactsScreenV3() { val listState = rememberScalingLazyListState() Scaffold(
timeText = { if (!listState.isScrollInProgress) { TimeText() } }, vignette = { Vignette( vignettePosition = VignettePosition.TopAndBottom ) }, positionIndicator = { PositionIndicator( scalingLazyListState = listState, ) } ) { ScalingLazyColumn(state = listState) { // লུ } } Tips4: UIվળྫ2(Scaffoldͷ׆༻)
Reference •Google I/O 2022 Keynote / Developer Keynote /
Session https://io.google/2022 •Announcing Compose for Wear OS Beta! https://android-developers.googleblog.com/2022/05/ announcing-compose-for-wear-os-beta.html •Codelabs (Wear OS) https://codelabs.developers.google.com/?cat=wearos
Please let me know if you have any requests
such as technical speeches, technical writings and so on. http://www.linkedin.com/in/korodroid Thank you so much http://fb.com/kanbara.kenichi @korodroid