Slide 1

Slide 1 text

Gunosy for Apple Watch ͕Ͱ͖Δ·Ͱ גࣜձࣾGunosyɹ։ൃຊ෦ ઒ᬒ༤հ

Slide 2

Slide 2 text

@jeffsuke iOS App Developer https://github.com/jeffsuke ࠓ೥ͷWWDC͸ ҆શͳ஍Ҭʹധ·Εͦ͏Ͱ͢

Slide 3

Slide 3 text

WWDC2014ʹ͓͚Δ@jeffsuke॓ധઌ෇ۙ

Slide 4

Slide 4 text

SFةݥͳ஍ҬϚοϓ ֎຿লϗʔϜϖʔδΑΓ

Slide 5

Slide 5 text

Gunosy • ৘ใΩϡϨʔγϣϯαʔϏε • 900ສμ΢ϯϩʔυ • ࣾһͷඪ४ݴޠ͸GoΒ͍͠

Slide 6

Slide 6 text

֓ཁ • Apple Watch্ͰշదͳମݧΛ࣮ݱ͢Δ·Ͱؤ ுͬͨ࿩

Slide 7

Slide 7 text

໨࣍ • Apple WatchΞϓϦ֓ཁ • Watch Appͷ࠷దԽ • Glanceͷ࠷దԽ • ਃ੥ޙͷ࿩

Slide 8

Slide 8 text

Gunosy for Apple WatchͰग़དྷΔ͜ͱ Glance Watch app

Slide 9

Slide 9 text

Apple WatchΞϓϦ ΞϓϦຊମ Extension Watch app Storyboard Image assets Controller, Model Setter UIEvent

Slide 10

Slide 10 text

Apple WatchΞϓϦͷ࢓૊Έ • ՄೳͳݶΓը૾͸Apple Watchଆʹอଘ͓ͯ͘͠ • ද͍ࣔͯ͠Δviewͷ৘ใ͸औಘग़དྷͳ͍

Slide 11

Slide 11 text

Watch Appʹ͓͚Δ࠷దԽ

Slide 12

Slide 12 text

Gunosyʹ͓͚ΔWatch App • Alamofire • SwiftyJSON • API͔Βड͚औͬͨ࿩୊ͷ৘ใΛݩʹ هࣄΛදࣔɻৄࡉϖʔδͰ͸ɺຊମʹ อଘɺຊମͰ։͘ࣄ͕Ͱ͖Δɻ • ඳը·ͰΛ࠷୹ʹ͢Δ • iPhoneͱAppleWatchͷ௨৴ΛݮΒ͢ • อଘग़དྷΔ΋ͷ͸อଘ͢Δ ϙΠϯτ ֓ཁ

Slide 13

Slide 13 text

willActivate()ͷ׆༻ • initͱawakeͰͷॲཧΛ࠷খݶʹ 1. Watch App͕ݺͼग़͞ΕΔ 2. Storyboard͕ಡΈࠐ·ΕΔ 3. ର৅ը໘ͷinit, awake͕૸Δ 4. Watch্Ͱը໘͕දࣔ͞ΕΔ 5. willActivate()͕ݺ͹ΕΔ ىಈ·Ͱͷखॱ

Slide 14

Slide 14 text

willActivate()ͷ׆༻

Slide 15

Slide 15 text

WKInterfaceGroupͷར༻ • Placeholderͱͯ͠ • ؙ֯

Slide 16

Slide 16 text

addCachedImage • BLEͷҝ௨৴଎౓ʹ੍ݶ͕͋ΔɻՄೳͳݶΓ࠶ར༻͢Δը૾͸ Ωϟογϡ • ֤ΞϓϦ5MB·ͰΩϟογϡՄೳ • kiavashfaisali/KFSwiftImageLoaderͱ͔࢖͏ͱศརͬΆ͍ ࢀߟɿ https://developer.apple.com/library/ios/documentation/General/Conceptual/WatchKitProgrammingGuide/Images.html http://qiita.com/_tid_/items/55667b00ce158a28428a

Slide 17

Slide 17 text

addCachedImage ಡΈࠐΈ อଘ

Slide 18

Slide 18 text

Watch Appʹ͓͚Δ࠷దԽ • ϥΠϑαΠΫϧΛ஌ΓඳըՄೳͳ෺͔Βॱ࣍ඳը ͢Δ • ը૾͸ՄೳͳݶΓWatchຊମʹ

Slide 19

Slide 19 text

Glanceʹ͓͚Δ࠷దԽ

Slide 20

Slide 20 text

Gunosyʹ͓͚ΔGlance • API͔Βड͚औͬͨ࿩୊ͷ৘ใΛݩʹ ը૾Λදࣔɻ࣌ܭ̍ը໘Ͱχϡʔε͕ ෼͔Δମݧɻ • ਓʹݟͤͯࣗຫͨ͘͠ͳΔػೳ Glance • ಡΈࠐΈ·Ͱͷ͕࣌ؒϙΠϯτ • ͻͱ໨Ͱ෼͔ΔUI ϙΠϯτ ֓ཁ

Slide 21

Slide 21 text

ՄೳͳݶΓΩϟογϡ͢Δ • ڞ௨ͷAppGroupΛઃఆ͠ɺNSUserDefault ͰඞཁͳσʔλΛڞ༗ͨ͠ɻ • [[NSUserDefaults alloc] initWithSuiteName:@“group.mycompany.my app"] App Group ը૾Ωϟογϡ • addCachedImage

Slide 22

Slide 22 text

ຊମͰը૾Λੜ੒͢Δ

Slide 23

Slide 23 text

ຊମͰը૾Λੜ੒͢Δ

Slide 24

Slide 24 text

GithubͰެ։͍ͯ͠·͢ • https://github.com/jeffsuke/GlanceWordRainbowImage

Slide 25

Slide 25 text

Glanceʹ͓͚Δ࠷దԽ • ը૾ʹඳը͢Δ͜ͱͰෳࡶͳදݱΛ࣮ݱ • ՄೳͳݶΓը૾౳ΛΩϟογϡ͓ͯ͘͠

Slide 26

Slide 26 text

ਃ੥ޙͷ࿩

Slide 27

Slide 27 text

ϦδΣΫτͷ࿩ • ൃച೔Ͱ͋Δ4/24Λ໨ࢦͯ͠։ൃ • ͔͠͠ೋ౓ͷϦδΣΫτ • ೋͷమΛ౿·ͳ͍Tips

Slide 28

Slide 28 text

ϦδΣΫτࣄྫ̍ • Watch appΛ࢖͏લʹҰ౓iPhoneͷ ىಈΛཁٻ͠ɺϦδΣΫτɻ • ΢Υον୯ମͰҙຯͷ͋ΔػೳΛఏ ڙͰ͖͍ͯͳ͍ҝɺຊମΞϓϦͰೝ ূΛ࣮ߦ͢Δ͜ͱʹɻ • ͨͩ͠ɺJAL΍Uber౳ϩάΠϯΛཁ ٻ͢ΔΞϓϦ΋ଘࡏ͢ΔͷͰɺϩά ΠϯͳΒ͹ྑ͍ͷ͔΋ɻ

Slide 29

Slide 29 text

ϦδΣΫτࣄྫ̎ • iPhoneͰಡΉϘλϯΛԡͯ͠΋ WatchΞϓϦͰͷมԽ͕ͳ͍ͨΊϦ δΣΫτɻ • openParentApplication:reply:Λ༻͍ ͯ։͍͔ͨͲ͏͔Λฦ͢ มߋલ มߋޙ

Slide 30

Slide 30 text

ϦδΣΫτࣄྫ̎ Watchଆ ຊମଆ

Slide 31

Slide 31 text

ϦδΣΫτͷ࿩·ͱΊ • Apple Watch୯ମͰମݧ͕੒Γཱ͍ͬͯΔඞཁ͕ ͋Δ

Slide 32

Slide 32 text

Apple Watch·ͱΊ • Apple WatchΞϓϦόΠφϦʹՄೳͳݶΓViewؔ ࿈ͷཁૉΛؚΊ͓ͯ͘ • ෳࡶͳॲཧ͸Extensionɺ͕͔͔࣌ؒΔॲཧ͸ຊ ମΞϓϦͰ࣮ࢪ • WatchΞϓϦ୯ମͰମݧΛಧ͚Δඞཁ͕͋Δ

Slide 33

Slide 33 text

࣭ٙԠ౴