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
290
実践 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
370
新規事業のIoTプロダクトをプロトタイピングする技術 / IoT product prototyping in cookpad mart
shanonim
0
260
IoTで美味しい漬け物を作りたい v2 / make good pickles with IoT v2
shanonim
1
480
アルコールモニタリングIoT / Alcohol monitoring IoT
shanonim
0
630
Play with Android Things
shanonim
1
6.3k
Android Things Now
shanonim
1
620
Kotlin初心者向けハンズオン #3 / Kotlin Hands-on for Beginners
shanonim
2
340
UI模写のすゝめ / Encouragement of UI drawing
shanonim
3
2.4k
食卓を支える技術 ~Oisixのアプリ開発~ / App Development in Oisix
shanonim
0
1.4k
Other Decks in Technology
See All in Technology
なぜインフラコードのモジュール化は難しいのか - アプリケーションコードとの本質的な違いから考える
mizzy
55
18k
「O(n log(n))のパフォーマンス」の意味がわかるようになろう
dhirabayashi
0
190
AIと共に開発する時代の組織、プロセス設計 freeeでの実践から見えてきたこと
freee
4
730
Spring Boot利用を前提としたJavaライブラリ開発方法の提案
kokihoshihara
PRO
2
230
【Oracle Cloud ウェビナー】パスワードだけでは守れない時代~多要素認証で強化する企業セキュリティ~
oracle4engineer
PRO
2
100
AIでテストプロセスを自動化しよう251113.pdf
sakatakazunori
0
160
Axon Frameworkのイベントストアを独自拡張した話
zozotech
PRO
0
150
なぜブラウザで帳票を生成したいのか どのようにブラウザで帳票を生成するのか
yagisanreports
0
120
米軍Platform One / Black Pearlに学ぶ極限環境DevSecOps
jyoshise
2
470
アジャイル社内普及ご近所さんマップを作ろう / Let's create an agile neighborhood map
psj59129
1
130
バクラクの AI-BPO を支える AI エージェント 〜とそれを支える Bet AI Guild〜
tomoaki25
2
780
QAを"自動化する"ことの本質
kshino
1
130
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
174
15k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Become a Pro
speakerdeck
PRO
29
5.6k
Agile that works and the tools we love
rasmusluckow
331
21k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.1k
The Invisible Side of Design
smashingmag
302
51k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Building Applications with DynamoDB
mza
96
6.8k
Embracing the Ebb and Flow
colly
88
4.9k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
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