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
530
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Wear OSアプリ開発Tips with Jetpack Compose
Engineer LT 1の発表資料です。
#EngineerLT
#WearOS
#androidjo
Kenichi Kambara
June 14, 2022
More Decks by Kenichi Kambara
See All by Kenichi Kambara
n個のアプリ開発系 Skills を 作り育てて気づいたこと
korodroid
0
1.3k
[爆速開発LT #2] Codex-Powered Mobile Apps Development - Deep Dive Edition -
korodroid
0
57
[DevFest Singapore] Getting Started with Mobile Development Using Generative AI
korodroid
0
68
[FlutterAlliance]Designing Borderless UX in Flutter: Insights from 50 Countries
korodroid
0
45
[Codex Meetup Japan #1] Codex-Powered Mobile Apps Development
korodroid
2
1.5k
[AgentConHelsinki2025]From Assistant to Agent: How Developer Agents Reshape Mobile Workflows
korodroid
0
37
[FlutterTokyo#10]In-App Language Switching in Flutter
korodroid
0
51
[potatotips #92]Integrating Quick Settings Tiles into Your Android App
korodroid
1
200
[ABC2025Spring]Code Less, Build More: A Practical Guide to Mobile Apps with Generative AI
korodroid
0
260
Other Decks in Technology
See All in Technology
『モデル + ハーネス』で読み解く AIエージェント入門
oracle4engineer
PRO
2
180
ファミコンでPHPを動かす / PHP on the Famicom
tomzoh
2
630
AI時代の開発生産性は、個人技からチーム設計へ
moongift
PRO
4
2.6k
“それは自分の仕事じゃない"を越えて行け
yuukiyo
1
530
データと地図で読む 大井町の「かわるもの、かわらないもの」
yoshiyama_hana
0
160
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
110k
Multicaで30個のミニプロジェクトをAIエージェント運用して見えてきたこと
eiei114
1
640
ここは地獄!つらい朝会を体験することで、チームとしてのより良い振る舞いに気づくワークショップ / The stand-up meeting from hell in the game industry
scrummasudar
0
280
そのドキュメント、自動化しませんか?
yuksew
1
420
ダッシュボード"開発"について 〜使われるダッシュボードのつくりかた〜
kimichan
0
210
Power Automateアップデート情報
miyakemito
0
150
文字起こし基盤の信頼性
abnoumaru
0
130
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
310
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
190
So, you think you're a good person
axbom
PRO
2
2.1k
Practical Orchestrator
shlominoach
191
11k
Are puppies a ranking factor?
jonoalderson
1
3.7k
Building Adaptive Systems
keathley
44
3.1k
Rails Girls Zürich Keynote
gr2m
96
14k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
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