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
Gunosy for Apple Watchができるまで
Search
Yusuke Kawanabe
May 27, 2015
Technology
6
820
Gunosy for Apple Watchができるまで
GunosyのGlance画面を作るために作ったライブラリ
https://github.com/jeffsuke/GlanceWordRainbowImage
Yusuke Kawanabe
May 27, 2015
Tweet
Share
More Decks by Yusuke Kawanabe
See All by Yusuke Kawanabe
Presentation with Coordinators
ykawanabe
4
780
Other Decks in Technology
See All in Technology
Moved to https://speakerdeck.com/toshihue/presales-engineer-career-bridging-tech-biz-ja
toshihue
2
740
自動テストの世界に、この5年間で起きたこと
autifyhq
10
8.5k
MC906491 を見据えた Microsoft Entra Connect アップグレード対応
tamaiyutaro
1
540
AndroidデバイスにFTPサーバを建立する
e10dokup
0
250
君も受託系GISエンジニアにならないか
sudataka
2
430
RSNA2024振り返り
nanachi
0
580
RECRUIT TECH CONFERENCE 2025 プレイベント【高橋】
recruitengineers
PRO
0
160
2025-02-21 ゆるSRE勉強会 Enhancing SRE Using AI
yoshiiryo1
1
320
「海外登壇」という 選択肢を与えるために 〜Gophers EX
logica0419
0
700
Nekko Cloud、 これまでとこれから ~学生サークルが作る、 小さなクラウド
logica0419
2
960
30分でわかる『アジャイルデータモデリング』
hanon52_
9
2.7k
Platform Engineeringは自由のめまい
nwiizo
4
2.1k
Featured
See All Featured
Building an army of robots
kneath
303
45k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
550
Rebuilding a faster, lazier Slack
samanthasiow
80
8.8k
What's in a price? How to price your products and services
michaelherold
244
12k
How to train your dragon (web standard)
notwaldorf
91
5.8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Into the Great Unknown - MozCon
thekraken
35
1.6k
Bootstrapping a Software Product
garrettdimon
PRO
306
110k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
How to Ace a Technical Interview
jacobian
276
23k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Transcript
Gunosy for Apple Watch ͕Ͱ͖Δ·Ͱ גࣜձࣾGunosyɹ։ൃຊ෦ ᬒ༤հ
@jeffsuke iOS App Developer https://github.com/jeffsuke ࠓͷWWDC ҆શͳҬʹധ·Εͦ͏Ͱ͢
WWDC2014ʹ͓͚Δ@jeffsuke॓ധઌۙ
SFةݥͳҬϚοϓ ֎লϗʔϜϖʔδΑΓ
Gunosy • ใΩϡϨʔγϣϯαʔϏε • 900ສμϯϩʔυ • ࣾһͷඪ४ݴޠGoΒ͍͠
֓ཁ • Apple Watch্ͰշదͳମݧΛ࣮ݱ͢Δ·Ͱؤ ுͬͨ
࣍ • Apple WatchΞϓϦ֓ཁ • Watch Appͷ࠷దԽ • Glanceͷ࠷దԽ •
ਃޙͷ
Gunosy for Apple WatchͰग़དྷΔ͜ͱ Glance Watch app
Apple WatchΞϓϦ ΞϓϦຊମ Extension Watch app Storyboard Image assets Controller,
Model Setter UIEvent
Apple WatchΞϓϦͷΈ • ՄೳͳݶΓը૾Apple Watchଆʹอଘ͓ͯ͘͠ • ද͍ࣔͯ͠Δviewͷใऔಘग़དྷͳ͍
Watch Appʹ͓͚Δ࠷దԽ
Gunosyʹ͓͚ΔWatch App • Alamofire • SwiftyJSON • API͔Βड͚औͬͨͷใΛݩʹ هࣄΛදࣔɻৄࡉϖʔδͰɺຊମʹ อଘɺຊମͰ։͘ࣄ͕Ͱ͖Δɻ
• ඳը·ͰΛ࠷ʹ͢Δ • iPhoneͱAppleWatchͷ௨৴ΛݮΒ͢ • อଘग़དྷΔͷอଘ͢Δ ϙΠϯτ ֓ཁ
willActivate()ͷ׆༻ • initͱawakeͰͷॲཧΛ࠷খݶʹ 1. Watch App͕ݺͼग़͞ΕΔ 2. Storyboard͕ಡΈࠐ·ΕΔ 3. ରը໘ͷinit,
awake͕Δ 4. Watch্Ͱը໘͕දࣔ͞ΕΔ 5. willActivate()͕ݺΕΔ ىಈ·Ͱͷखॱ
willActivate()ͷ׆༻
WKInterfaceGroupͷར༻ • Placeholderͱͯ͠ • ؙ֯
addCachedImage • BLEͷҝ௨৴ʹ੍ݶ͕͋ΔɻՄೳͳݶΓ࠶ར༻͢Δը૾ Ωϟογϡ • ֤ΞϓϦ5MB·ͰΩϟογϡՄೳ • kiavashfaisali/KFSwiftImageLoaderͱ͔͏ͱศརͬΆ͍ ࢀߟɿ https://developer.apple.com/library/ios/documentation/General/Conceptual/WatchKitProgrammingGuide/Images.html
http://qiita.com/_tid_/items/55667b00ce158a28428a
addCachedImage ಡΈࠐΈ อଘ
Watch Appʹ͓͚Δ࠷దԽ • ϥΠϑαΠΫϧΛΓඳըՄೳͳ͔Βॱ࣍ඳը ͢Δ • ը૾ՄೳͳݶΓWatchຊମʹ
Glanceʹ͓͚Δ࠷దԽ
Gunosyʹ͓͚ΔGlance • API͔Βड͚औͬͨͷใΛݩʹ ը૾Λදࣔɻ࣌ܭ̍ը໘Ͱχϡʔε͕ ͔Δମݧɻ • ਓʹݟͤͯࣗຫͨ͘͠ͳΔػೳ Glance • ಡΈࠐΈ·Ͱͷ͕࣌ؒϙΠϯτ
• ͻͱͰ͔ΔUI ϙΠϯτ ֓ཁ
ՄೳͳݶΓΩϟογϡ͢Δ • ڞ௨ͷAppGroupΛઃఆ͠ɺNSUserDefault ͰඞཁͳσʔλΛڞ༗ͨ͠ɻ • [[NSUserDefaults alloc] initWithSuiteName:@“group.mycompany.my app"] App
Group ը૾Ωϟογϡ • addCachedImage
ຊମͰը૾Λੜ͢Δ
ຊମͰը૾Λੜ͢Δ
GithubͰެ։͍ͯ͠·͢ • https://github.com/jeffsuke/GlanceWordRainbowImage
Glanceʹ͓͚Δ࠷దԽ • ը૾ʹඳը͢Δ͜ͱͰෳࡶͳදݱΛ࣮ݱ • ՄೳͳݶΓը૾ΛΩϟογϡ͓ͯ͘͠
ਃޙͷ
ϦδΣΫτͷ • ൃചͰ͋Δ4/24Λࢦͯ͠։ൃ • ͔͠͠ೋͷϦδΣΫτ • ೋͷమΛ౿·ͳ͍Tips
ϦδΣΫτࣄྫ̍ • Watch appΛ͏લʹҰiPhoneͷ ىಈΛཁٻ͠ɺϦδΣΫτɻ • Υον୯ମͰҙຯͷ͋ΔػೳΛఏ ڙͰ͖͍ͯͳ͍ҝɺຊମΞϓϦͰೝ ূΛ࣮ߦ͢Δ͜ͱʹɻ •
ͨͩ͠ɺJALUberϩάΠϯΛཁ ٻ͢ΔΞϓϦଘࡏ͢ΔͷͰɺϩά ΠϯͳΒྑ͍ͷ͔ɻ
ϦδΣΫτࣄྫ̎ • iPhoneͰಡΉϘλϯΛԡͯ͠ WatchΞϓϦͰͷมԽ͕ͳ͍ͨΊϦ δΣΫτɻ • openParentApplication:reply:Λ༻͍ ͯ։͍͔ͨͲ͏͔Λฦ͢ มߋલ มߋޙ
ϦδΣΫτࣄྫ̎ Watchଆ ຊମଆ
ϦδΣΫτͷ·ͱΊ • Apple Watch୯ମͰମݧ͕Γཱ͍ͬͯΔඞཁ͕ ͋Δ
Apple Watch·ͱΊ • Apple WatchΞϓϦόΠφϦʹՄೳͳݶΓViewؔ ࿈ͷཁૉΛؚΊ͓ͯ͘ • ෳࡶͳॲཧExtensionɺ͕͔͔࣌ؒΔॲཧຊ ମΞϓϦͰ࣮ࢪ •
WatchΞϓϦ୯ମͰମݧΛಧ͚Δඞཁ͕͋Δ
࣭ٙԠ