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
Xamarin Apple Watch
Search
USAMI Kosuke
July 11, 2015
Programming
0
54
Xamarin Apple Watch
第5回 Japan Xamarin User Group Conference 大阪
http://jxug.connpass.com/event/15125/
USAMI Kosuke
July 11, 2015
Tweet
Share
More Decks by USAMI Kosuke
See All by USAMI Kosuke
Onsager代数とその周辺 / Onsager algebra tsudoi
usamik26
0
530
Apple HIG 正式名称クイズ結果発表 / HIG Quiz Result
usamik26
0
110
ゆめみ大技林製作委員会の立ち上げの話 / daigirin project
usamik26
0
280
@ViewLoadingプロパティラッパの紹介と自前で実装する方法 / @ViewLoading property wrapper implementation
usamik26
0
430
これからUICollectionViewを実践活用する人のためのガイド / Guide to UICollectionView
usamik26
1
690
Xcodeとの最近の付き合い方のはなし / Approach To Xcode
usamik26
2
610
UICollectionView Compositional Layout
usamik26
0
680
Coding Swift with Visual Studio Code and Docker
usamik26
0
450
Swift Extension for Visual Studio Code
usamik26
2
910
Other Decks in Programming
See All in Programming
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
8
2.2k
Kaigi on Rails 2024 〜運営の裏側〜
krpk1900
1
230
3rd party scriptでもReactを使いたい! Preact + Reactのハイブリッド開発
righttouch
PRO
1
610
距離関数を極める! / SESSIONS 2024
gam0022
0
290
TypeScript Graph でコードレビューの心理的障壁を乗り越える
ysk8hori
2
1.1k
Compose 1.7のTextFieldはPOBox Plusで日本語変換できない
tomoya0x00
0
190
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
5
930
Click-free releases & the making of a CLI app
oheyadam
2
120
광고 소재 심사 과정에 AI를 도입하여 광고 서비스 생산성 향상시키기
kakao
PRO
0
170
Streams APIとTCPフロー制御 / Web Streams API and TCP flow control
tasshi
2
350
EMになってからチームの成果を最大化するために取り組んだこと/ Maximize team performance as EM
nashiusagi
0
100
CSC509 Lecture 13
javiergs
PRO
0
110
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
265
13k
The Art of Programming - Codeland 2020
erikaheidi
52
13k
The Language of Interfaces
destraynor
154
24k
The Cost Of JavaScript in 2023
addyosmani
45
6.8k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
Done Done
chrislema
181
16k
Designing the Hi-DPI Web
ddemaree
280
34k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Visualization
eitanlees
145
15k
Transcript
Xamarin'Ͱ Apple%Watch%ΞϓϦΛ࡞Δ
ࣗݾհ • Ӊࠤݟ"ެี"(@usamik26) • ϑΣϯϦϧגࣜձࣾ • iOS"ΞϓϦ։ൃ • Swi1"/"Objec7ve9C"(+"Reac7ve"frameworks) •
Xamarin"+"MvvmCross
WWDC$15 • 6/8%ʢ݄ʣ%ʙ%6/12ʢۚʣ • αϯϑϥϯγεί • OS%X%10.11%/%iOS%9%/%watchOS%2 • Swi4%2
Xamarin'WWDC'Party':'6/9ʢՐʣ
Agenda • Apple&Watch&ͱ • Apple&Watch&ΞϓϦͷߏ • Xamarin&Ͱͷ։ൃͷ͔ͨ͠ • watchOS&1&͔Β&watchOS&2&
Apple%Watch%ͱ
Apple%Watch%ͷछྨ
iPhone'&'Apple'Watch • iPhone(ͱϖΞϦϯάඞਢ • Watch(୯ಠͰͰ͖Δ͜ͱগͳ͍ • Watch(Ͱ௨Λड͚औΕΔɺ͍͔ͭ͘ ͷϦΞΫγϣϯ͕Ͱ͖Δ • Watch(ଂηϯαͰऔಘͨ͠σʔλ͕(
iPhone(ʹੵ͞ΕΔ
Apple%Watch%ͷ%UI
άϥϯε!/!௨
Apple%Watch%ΞϓϦͷߏ
WatchKit • Watch'ͷΞϓϦΛ࡞ΔͨΊͷ'SDK • Watch'ͷΞϓϦɺ։ൃऀ͚υΩϡϝϯτͰ ʮWatchKit'AppʯͱݺΕ͍ͯΔ
WatchKit(ͷυΩϡϝϯτ • Apple&Developer • h,ps:/ /developer.apple.com/watchkit/ • Human&Interface&Guidelines&/&Programming&Guide • Xamarin&Developer
• h,p:/ /developer.xamarin.com/guides/ios/watch/
WatchKit(App(ͷߏ • 3#ͭͷλʔήοτ • iOS#App • WatchKit#Extension • WatchKit#App
Extension)ͱ)App • WatchKit)Extension • ࣮ߦίʔυ)/)iOS)্ʹஔ • WatchKit)App • UIʢstoryboardʣ)/)Watch)্ʹஔ •
BLE)௨৴Ͱ࿈ܞ࣮ͯ͠ߦ͞ΕΔ
Xamarin'Ͱͷ։ൃͷ͔ͨ͠
Demo WatchKit(App(Λ৽ن࡞ͯ͠ΈΔ
৽ن࡞!Demo!·ͱΊ • iOS%App%ͱಉ͡ιϦϡʔγϣϯͰ%WatchKit%App%৽ن࡞ • ࢀরઃఆʢࣗಈతʹߦΘΕΔʣ • iOS%App%.>%WatchKit%Extension%.>%WatchKit%App • Bundle%ID%ઃఆʢࣗಈతʹߦΘΕΔʣ •
WatchKit%Extension%.>%WatchKit%App%.>%iOS%App • Startup%Project%%WatchKit%Extension
Interface.storyboard • WatchKit)App)ͷ)UI)Λఆٛ͢Δ) Storyboard • View)ͯ͢)Storyboard)্Ͱఆٛ ʢίʔυͰੜෆՄʣ • ͋Β͔͡Ί༻ҙ͞Ε͍ͯΔ)View)͔͠ ͑ͳ͍ʢΧελϜ)View)ෆՄʣ
• WatchKit)App)ͷΤϯτϦϙΠϯτͷ΄ ͔ɺGlance))No;fica;on)ͷΤϯτϦ ϙΠϯτ͋Δ
Demo WatchKit(Extension(Ͱͷίʔυهड़
ίʔυهड़!Demo!·ͱΊ • WKInterfaceController/Ͱίʔυهड़ • iOS/Ͱͷ/UIViewController/ʹ͋ͨΔΫϥε • UI/ͷΞΫγϣϯΛهड़
iOS$App$ͱ$WatchKit$App$ͷ࿈ܞ • App$Group$Λ͏ • Bundle$ID$ͱ$Provisioning$Profile$ͷઃఆ • NSUserDefaults$/$ϑΝΠϧ$/$CoreData$Λڞ༗ • ͜ͷ͋ͨΓ$Xamarin$Developer$ͷυΩϡϝϯτΛಡΉͱΑ͍
watchOS(1(͔Β(watchOS(2(
iOS$9$/$watchOS$2 • iOS%9%ͱ%watchOS%2%ͷਖ਼ࣜϦϦʔεळ • ʢྫͲ͓ΓͳΒ9݄ʣ • ݱࡏɺiOS%9%ͷύϒϦοΫϕʔλ൛͕͞Ε͍ͯΔ • ։ൃऀ͚ʹैདྷ௨Γ%iOS%9%ͱ%watchOS%2%ͷϕʔλ൛͕ ͞Ε͍ͯΔ
Xamarin'ͷঢ়گ • iOS%9%ରԠͷ%Preview%൛͕ϦϦʔε͞Ε͍ͯΔ • watchOS%2%ʹະରԠ
watchOS(2
Watch&ଆͰͷಈ࡞ • WatchKit)Extension)ͷίʔυ͕)Watch)্Ͱಈ͘Α͏ʹͳΔ • BLE)௨৴Λ͞·ͳ͍ͷ্͕ݟࠐ·ΕΔ • ैདྷ)framework)͕)Watch)ଆͰಈ࡞͢ΔΑ͏ʹͳΔ • Watch)୯ಠͰͷ)HTTP)௨৴Ґஔใऔಘ
Watch&Connec+vity • iOS%App%ͱ%WatchKit%App%ͱͷ࿈ܞͷ৽͍͠खஈ • ํσʔλసૹ • iOS%ଆΛىʹ%Watch%ଆʹԿ͔Λͤ͞Δ͜ͱ͕Մೳ • ʢwatchOS%1%Ͱ͔ͬͨ͠ʣ
View%ͷՃ • Ξϥʔτ • ΞΫγϣϯγʔτ • ϐοΧʔ • ϚΠΫԻ •
ϝσΟΞ࠶ੜ
Watch&ଂηϯαͷΞΫηε • Ճηϯα • าܭ • ϚΠΫ • ɾɾɾͳͲ
Watch&Complica-on • Watch'Face'ʹಠࣗͷ༰ΛೖΕΒΕΔ • ClockKit'ͱ͍͏ઐ༻'API
Apple%Watch%ͷՄೳੑ͕͕Δ • watchOS)1)ͷ)Apple)Watch)ɺपғͷظͷେ͖͞ͱ࣮ࡍʹͰ ͖Δ͜ͱͷΪϟοϓ͕େ͖͔ͬͨ • ͦΕ͕͔͍ͬͯͯ͏Ϣʔβʹड͚ೖΕΒΕ͍ͯΔ͕ɺ ͦ͏Ͱͳ͍Ϣʔβʹड͚ೖΕΒΕ͍ͯͳ͍ͷ͕ݱঢ় • Watch)ͷاը)0>)ͦΕαʔυύʔςΟΞϓϦͰͰ͖·ͤ Μɾɾɾ
• ͜ΕΒ͕ղফ͞Ε͍ͯͣ͘
Apple%Watch%ΞϓϦࠓޙʹظ͕ ࣋ͯͦ͏