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
実践 Glass EE2 向けアプリ開発 / Practical Glass EE2 app ...
Search
shanonim
October 05, 2022
Technology
0
270
実践 Glass EE2 向けアプリ開発 / Practical Glass EE2 app development
2022.10.05
DroidKaigi 2022
https://droidkaigi.jp/2022/timetable/364496
shanonim
October 05, 2022
Tweet
Share
More Decks by shanonim
See All by shanonim
What's "Material You"
shanonim
0
340
新規事業のIoTプロダクトをプロトタイピングする技術 / IoT product prototyping in cookpad mart
shanonim
0
240
IoTで美味しい漬け物を作りたい v2 / make good pickles with IoT v2
shanonim
1
430
アルコールモニタリングIoT / Alcohol monitoring IoT
shanonim
0
600
Play with Android Things
shanonim
1
6.2k
Android Things Now
shanonim
1
610
Kotlin初心者向けハンズオン #3 / Kotlin Hands-on for Beginners
shanonim
2
330
UI模写のすゝめ / Encouragement of UI drawing
shanonim
3
2.3k
食卓を支える技術 ~Oisixのアプリ開発~ / App Development in Oisix
shanonim
0
1.4k
Other Decks in Technology
See All in Technology
オープンソースのハードウェアのコンテストに参加している話
iotengineer22
0
660
SmartHRの複数のチームにおけるMCPサーバーの活用事例と課題
yukisnow1823
2
1.2k
ローカル環境でAIを動かそう!
falken
PRO
1
170
Cursor Meetup Tokyo
iamshunta
2
730
ソフトウェアテストのAI活用_ver1.10
fumisuke
0
240
継続戦闘能⼒
sansantech
PRO
0
220
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
8
65k
從開發到架構設計的可觀測性實踐
philipz
0
120
MCP で繋ぐ Figma とデザインシステム〜LLM を使った UI 実装のリアル〜
kimuson
2
1.3k
AIコードエディタは開発を変えるか?Cursorをチームに導入して1ヶ月経った本音
ota1022
1
710
GitHub Coding Agent 概要
kkamegawa
1
1.7k
Javaアプリケーションの配布とパッケージング / Distribution and packaging of Java applications
hogelog
1
270
Featured
See All Featured
For a Future-Friendly Web
brad_frost
178
9.7k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Adopting Sorbet at Scale
ufuk
76
9.4k
Statistics for Hackers
jakevdp
799
220k
The Cost Of JavaScript in 2023
addyosmani
49
8.1k
Build The Right Thing And Hit Your Dates
maggiecrowley
35
2.7k
Scaling GitHub
holman
459
140k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Fireside Chat
paigeccino
37
3.5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
42
2.3k
Documentation Writing (for coders)
carmenintech
71
4.8k
Transcript
Practical Glass EE2 app development @shanonim 1 ࣮ફ Glass EE2
͚ΞϓϦ։ൃ
2
ࠓ͢͜ͱ • Google Glass ͷྺ࢙ • Glass EE2 ʹ͍ͭͯ •
ಋೖࣄྫ • σβΠϯΨΠυϥΠϯͷղઆ • ϢʔβʔΠϯλʔϑΣʔεͷղઆ • αϯϓϧϓϩμΫτͷղઆ 3
ࠓ͞ͳ͍͜ͱ • Glass EE2 Ҏ֎ͷεϚʔτάϥεʹ͍ͭͯ • ߪೖํ๏ͱηοτΞοϓํ๏ • Glass EE2
͚ΞϓϦͷӡ༻ʢϦϦʔεΞοϓσʔτʣʹ͍ͭͯ 4
Google Glass 5
6 ref: https://www.youtube.com/watch?v=9c6W4CCU9M4
• 2013: ൃച։࢝ ◦ HMD/ARσόΠεͷઌۦ͚ ◦ Glassware ͷੜ • 2015:
ൢചऴྃ ◦ ϓϥΠόγʔ ◦ σΟεϓϨΠࢹʹΑΔ҆શੑͷݒ೦ 7 Google Glass
8 Glass Enterprise Edition • 2017: Enterprise Edition (EE) ൢച։࢝
◦ toB ͚σόΠεͱͯ͠ϦχϡʔΞϧ • 2019: Enterprise Edition 2 (EE2) ൢച։࢝ ◦ EE ͷεϖοΫ্൛ ◦ ։ൃऀ͚αϙʔτͷॆ࣮ ◦ 2020ʹҰൠ։ൃऀ͚ͷൢച։࢝
9 Glass Enterprise Edition • 2017: Enterprise Edition (EE) ൢച։࢝
◦ toB ͚σόΠεͱͯ͠ϦχϡʔΞϧ • 2019: Enterprise Edition 2 (EE2) ൢച։࢝ ◦ EE ͷεϖοΫ্൛ ◦ ։ൃऀ͚αϙʔτͷॆ࣮ ◦ 2020ʹҰൠ։ൃऀ͚ͷൢച։࢝
Tech spec 10
• ӈͷલʹ͋ΔϓϦζϜ͕σΟ εϓϨΠͱͯ͠ػೳ͢Δ • ؟ڸͷϨϯζ͕σΟεϓϨΠʹ ͳ͍ͬͯͨΓɺບʹө૾ ΛӨ͢ΔܗࣜͰͳ͍ 11 Tech spec
12 ref: https://www.youtube.com/watch?v=cJA0E19REHQ
13 Tech Spec • Android 8.1 (Oreo) • Memory 3GB
/ Storage 32GB • Display (640x360) • WiFi / Bluetooth • Camera / Microphones / Audio-out • Touchpad
14 Tech Spec • Android 8.1 (Oreo) • Memory 3GB
/ Storage 32GB • Display (640x360) • WiFi / Bluetooth • Camera / Microphones / Audio-out • Touchpad
15 Tech Spec • Android 8.1 (Oreo) • Memory 3GB
/ Storage 32GB • Display (640x360) • WiFi / Bluetooth • Camera / Microphones / Audio-out • Touchpad
• ӈଆͷଆ෦͕λονύουʹ ͳ͍ͬͯΔ 16 Touchpad
17 GlassGestureDetector ref: https://github.com/googlesamples/glass-enterprise-samples • λονύουͷδΣενϟʔΛఆٛ • جຊδΣενϟʔ4બ ◦ TAP
◦ SWIPE_FORWARD ◦ SWIPE_BACKWARD ◦ SWIPE_DOWN
18 TAP • ຊମͷଆ໘Λλοϓ ◦ બࢶͷ֬ఆ ◦ ೖྗͷܾఆ
19 SWIPE_FORWARD • ຊମͷޙΖ͔ΒલεϫΠϓ ◦ ࣍ϖʔδͷදࣔ ◦ બࢶΛਐΊΔ
20 SWIPE_BACKWARD • ຊମͷલ͔ΒޙΖεϫΠϓ ◦ લϖʔδͷදࣔ ◦ બࢶΛ͢
21 SWIPE_DOWN • Touchpad ͷதԝ͔ۙΒԼεϫΠ ϓ ◦ Android εϚʔτϑΥϯͷ
back Ωʔʹ૬͢ΔΞΫγϣϯ ◦ લʹΔ ◦ ऴྃ͢Δ
Demo 22
Demo • 🤔 Glass ΞϓϦ͕ͲͷΑ͏ʹಈ͘ͷ͔ ◦ 🃏 CardSample ▪ ͍͔ͭ͘ͷจষ͕ॱ൪ʹදࣔ͞ΕΔΞϓϦ
◦ 📷 Camera + Gallery ▪ Glass ͰࣸਅΛࡱӨ͢Δ ▪ ࡱӨͨࣸ͠ਅΛӾཡ͢Δ 23
Don't try to replace smartphone, tablet, or laptop features with
Glass. 24
25 • Glass EE2 ɺεϚʔτϑΥϯΛશʹସ͢ΔσόΠεͰͳ͍ • εϚʔτϑΥϯλϒϨοτͦͷଞͷσόΠεͱڠௐ͠ɺͦΕΒͷػೳΛ ʮิʯ͢ΔσόΠεͱͯ͠ར༻͢Δ͜ͱ͕ਪ͞ΕΔ Glass
is …?
Case studies 26
27 • ྲྀݿͰͷՙཧ ◦ QRίʔυϦʔμʔͰಡΈ औͬͨใΛ Glass ͷσΟε ϓϨΠʹදࣔͯ͠࡞ۀ͢Δ ◦
ՙͷ͚ɾνΣοΫϦ ετͷ֬ೝ Case studies ref: https://www.google.com/glass/case-studies/
28 • େܕػցͷอकϝϯςφϯεۀ ◦ Glass ͷΧϝϥө૾Λԕִͱ ϦΞϧλΠϜʹڞ༗͠ɺ࡞ۀࢦ ࣔΛड͚Δ ◦ ϚχϡΞϧΛ
Glass ͷσΟεϓ ϨΠʹදࣔ͠ͳ͕Β࡞ۀ͢Δ Case studies ref: https://www.google.com/glass/case-studies/
Good case👍 • ϋϯζϑϦʔ ◦ ͷલʹৗʹը໘͕͋Δঢ়ଶ ▪ ը໘Λݟͳ͕Β࡞ۀ͢ΔݱͰಛʹޮՌΛൃش͢Δ ◦ ԻʹΑΔૢ࡞
29
Not good case 🥲 • ࡉ͔͍จࣈͷӾཡ ◦ σΟεϓϨΠαΠζͷ߹্ɺݟ͍͢จࣈαΠζ͕ݶΒΕΔ ◦ طଘͷ
Web ϖʔδΛͦͷ··ϒϥδϯά͢Δͷࠔ • ෳࡶͳը໘ૢ࡞ ◦ 1ը໘ͰෳͷΞΫγϣϯΛ࣮ߦͤ͞Δͷࠔ 30
Design guidelines 31
32 • Glass ͚ΞϓϦ։ൃʹಛԽͨ͠σβΠϯΨΠυϥΠϯ • σΟεϓϨΠͷࢹೝੑͱૢ࡞ੑΛଛͳΘͳ͍ͨΊͷϧʔϧ Design guidelines
• ͻͱͰΘ͔Δ ◦ Ϣʔβʔ͕ը໘ͷϝοηʔ δΞϓϦͷૢ࡞Λ͙͢ʹ ཧղͰ͖Δ ◦ ΛࡉΊͯݟΔඞཁͷͳ͍ ใ 33
Glanceable ✅ ❌
34 Timely • దͳλΠϛϯάͰใΛఏڙ ͢Δ ◦ ݱࡏͷঢ়ଶͱɺΞΫγϣϯ ͨ͠ޙͷঢ়ଶΛཧղͯ͠ Β͏ TAP
35 Easy to tap • λοϓ͍͢͜͠ͱ • λοϓͰ͖Δ͜ͱ͕Θ͔Δ͜ͱ
36 Time saving • ࣌ؒͷઅ ◦ Ϣʔβʔ͕λεΫΛૉૣ͘ ྃͰ͖ΔΑ͏ʹ͢Δ ◦ ͜ͷը໘ͰԿ͕Ͱ͖Δͷ͔
ॠ࣌ʹཧղͰ͖ΔఏҊΛߦ ͏ TAP TAP Ұཡ ৄࡉ ૢ࡞
User interface 37
User interface • Theme • Layout ◦ Main Layout ◦
Left column layout 38
• ActionBar ͷͳ͍શը໘දࣔ • ࠇ৭ͷഎܠ ◦ ిফඅͷ੍ • ന৭ͷςΩετ 39
Theme
• body ◦ ϝΠϯςΩετΛஔ͢ΔྖҬ ◦ .fontSize = 40.sp • footer
◦ ิ༻ͷαϒςΩετΛஔ͢ΔྖҬ ◦ ϝΠϯςΩετͱൺͯࢹೝੑ͕͍ͷͰ ҙ͕ඞཁ ◦ .fontSize = 14.sp 40 Main Layout
• left-body ◦ ը૾Λஔ͢ΔྖҬ ◦ .width(240.dp) • right-body ◦ ϝΠϯςΩετΛஔ͢ΔྖҬ
◦ .fontSize = 30.sp • footer ◦ ิ༻ͷαϒςΩετΛஔ͢ΔྖҬ ◦ .fontSize = 14.sp 41 Left column layout
App development 42
Glass EE2 App development 43 • ։ൃڥ ◦ εϚʔτϑΥϯ͚ͷ Android
ΞϓϦ։ൃͱಉ༷ ▪ ✅ Android Studio ▪ ✅ Jetpack Compose ▪ ⚠ GMS (Google Mobile Services) ར༻ෆՄ
sample: GlassRecipe 44 • ྉཧϨγϐΛӾཡ͢Δ Glass ΞϓϦ ◦ Recipes ▪
🍳 ྉཧΛબ͢Δ ◦ Steps ▪ 📝 ྉཧͷखॱΛӾཡ͢Δ
45 Recipes • Left column layout ◦ left body ▪
ࣸਅϓϨϏϡʔ ◦ right body ▪ λΠτϧͱࡐྉ ◦ footer ▪ ࣍ͷը໘ભҠͰ͖Δ͜ͱΛهࡌ Glanceable Time saving Glanceable
46 Steps • Main layout ◦ body ▪ ྉཧखॱͷઆ໌ ◦
footer ▪ Πϯδέʔλʔ ▪ ྉཧखॱ͕͍ͭ͋͘Δ͔Λࣔ ͍ͯ͠Δ Time saving Timely Glanceable
Demo 47
Jetpack Compose in Glass App 48 • Glass ΞϓϦͰ Horizontal
ViewPager ͕ଟ༻͞ΕΔ • Jetpack Compose Λ͏͜ͱͰ؆ܿʹ࣮Մೳ ◦ accompanist-pager ◦ accompanist-pager-indicators • Preview Λͬͯ Glass UI Λ࠶ݱ
Jetpack Compose in Glass App 49 • Glass ΞϓϦͰ Horizontal
ViewPager ͕ଟ༻͞ΕΔ • Jetpack Compose Λ͏͜ͱͰ؆ܿʹ࣮Մೳ ◦ accompanist-pager ◦ accompanist-pager-indicators • Preview Λͬͯ Glass UI Λ࠶ݱ
50
Jetpack Compose in Glass App 51 • Glass ΞϓϦͰ Horizontal
ViewPager ͕ଟ༻͞ΕΔ • Jetpack Compose Λ͏͜ͱͰ؆ܿʹ࣮Մೳ ◦ accompanist-pager ◦ accompanist-pager-indicators • Preview Λͬͯ Glass UI Λ࠶ݱ
52
Conclusion 53
Glass Enterprise Edition 2 54 • Android OS ͕ಈ͘εϚʔτάϥε ◦
։ൃऀ͕ࣗ༝ʹεϚʔτάϥεΞϓϦΛ։ൃͰ͖Δ • εϚʔτϑΥϯλϒϨοτΛશʹସ͢ΔσόΠεͰͳ͍͕ɺͦΕΒ ͱΈ߹ΘͤΔ͜ͱͰ৽͍͠ମݧΛ࡞ΕΔՄೳੑ͕͋Δ
Google Glass ͷະདྷ 55 • Enterprise Edition ͷීٴ ◦ ϋʔυΣΞͷՁ֨ͱௐୡͷ
◦ ޙܧػछ • toC ͚ Glass ͷ࠶དྷ ◦ ϓϥΠόγʔͷղܾ ◦ εϚʔτϑΥϯΛʮิʯ͢ΔσόΠε͔Βɺʮସʯ͢ΔσόΠε
56 @shanonim @cookpad_jp
Appendix 57 • Project Glass: One day… ◦ https://www.youtube.com/watch?v=9c6W4CCU9M4 •
Google Glass (Glass EE2) ߪೖϨϙʔτ ◦ https://medium.com/@shanonim/glass-ee2-buying-guide- 5e84f55496ce
Appendix 58