Slide 1

Slide 1 text

Apple Watch Cellular ͷ௨৴ʹ͍ͭͯ USAMI Kosuke Fenrir Inc.

Slide 2

Slide 2 text

ࣗݾ঺հ » Ӊࠤݟެี (@usamik26) » ϑΣϯϦϧגࣜձࣾ » iOS ΞϓϦ։ൃ : Swift / Xamarin (C#)

Slide 3

Slide 3 text

Cellular ௨৴͕΍͖ͬͯͨ » Apple Watch Series 3 Cellular Ϟσϧ » ೔ຊͷରԠΩϟϦΞ : Softbank / au / docomo » प೾਺ଳผ : ϤʔϩούɾΞδΞϞσϧ / ถࠃϞσϧ / தࠃϞσϧ

Slide 4

Slide 4 text

Apple Watch ୯ಠͷ௨৴ » ୯ಠͷ Wi-Fi ௨৴ : watchOS 2 Ҏ߱ » ୯ಠͷ Cellular ௨৴ : watchOS 4 (New!)

Slide 5

Slide 5 text

ϞόΠϧ௨৴ͷΦϯΦϑ » Cellular ௨৴ͷΦϯΦϑ͸ɺίϯτϩʔϧηϯλʔͰઃఆՄೳ » Cellular ௨৴͕࢖ΘΕ͍ͯΔͱ͖ɺΞΠίϯ͕྘ʹͳΔ

Slide 6

Slide 6 text

Apple Watch ௨৴ͷ༏ઌ౓ » iPhone ܦ༝ ʼ Wi-Fi ʼ Cellular ௨৴

Slide 7

Slide 7 text

੾Γସ͑ͷλΠϜϥά » iPhone ͕ۙ͘ʹ͍ͳ͘ͳΔ » → ͍ͬͨΜɺ઀ଓͳ͠ঢ়ଶʹͳΔ » → ͠͹Β͔ͯ͘͠ΒɺCellular ௨৴Ͱ઀ଓঢ়ଶʹͳΔ » ͜ͷΑ͏ͳʮ઀ଓํࣜͷ੾Γସ͑଴ͪʯ͕ൃੜ͢Δ

Slide 8

Slide 8 text

URLSession » watchOS ͷ௨৴͸ URLSession Λ࢖͏͕ɾɾɾ » σϑΥϧτͷઃఆͰ͸ɺ੾Γସ͑Λ଴ͨͣʹ͙͢Τϥʔऴྃ͢Δ » NSURLErrorNotConnectedToInternet » ͔ͤͬ͘ Cellular ௨৴ʹ੾ΓସΘΔͷʹɺ͜ΕͰ͸ࠔΔ

Slide 9

Slide 9 text

waitsForConnectivity » ͙͢ʹΤϥʔऴྃ͠ͳ͍Α͏ʹ͢ΔϓϩύςΟ͕௥Ճ͞Εͨ let configuration = URLSessionConfiguration.ephemeral if #available(iOS 11.0, watchOSApplicationExtension 4.0, *) { configuration.waitsForConnectivity = true } let session = URLSession(configuration: configuration)

Slide 10

Slide 10 text

Connectivity ͕ؔ܎ͳ͍ঢ়گͰ΋࢖ ͬͯΑ͍ » waitsForConnectivity ͸σϑΥϧτͰ͸ false ʹͳ͍ͬͯΔ » ͓ͦΒ͘ɺैདྷͷ URLSession ͷڍಈʹ߹Θͤͯ͋Δ » ͚ͩͲɺৗʹ true ʹͯ͠͠·͑͹͍͍ » Reachability ͱ͔ؾʹ͠ͳͯ͘Α͘ͳΔ

Slide 11

Slide 11 text

੾Γସ͑଴ͪঢ়ଶʹͳͬͨ͜ͱΛ஌Δ » URLSessionTaskDelegate ͷϝιου͕௥Ճ͞Εͨ func urlSession(_ session: URLSession, taskIsWaitingForConnectivity task: URLSessionTask) { // ઀ଓํࣜͷ੾Γସ͑଴ͪঢ়ଶʹͳͬͨΒ͜͜΁དྷΔ // Ұ౓͚ͩݺ͹ΕΔ }

Slide 12

Slide 12 text

Watch ͷಠཱಈ࡞Λҙࣝ͢Δ » ࣮͸ watchOS 2 ͷࠒ͔Βಉ͡Ͱ͸͋Δ » watchOS 2 ͔Β୯ಠ௨৴͕Ͱ͖ΔΑ͏ʹͳ͍ͬͯͨͨΊ » ୯ಠ௨৴ͷγʔϯ͕૿͑ͨͨΊɺࠓޙ͸ΑΓ஫ҙ͕ඞཁʹͳΔ

Slide 13

Slide 13 text

Watch Connectivity framework » ैདྷ͔Β͋Δ iPhone - Watch ؒͷσʔλ΍ΓऔΓ » Watch ͕ಠཱͯ͠࢖͑ΔΑ͏ʹͳͬͨͷͰɺಉظ͞Ε͍ͯͳ͍ঢ়ଶ͸ ૿͑Δ » WCSession ͷ updateApplicationContext() Λ࢖ͬͯ໌ࣔతʹಉظ ͢Δ

Slide 14

Slide 14 text

ࢀߟ » Updating for Apple Watch Series 3 - Videos - Apple Developer » waitsForConnectivity | Apple Developer Documentation » App Programming Guide for watchOS » Apple Watch Series 3 (GPS + Cellular) ͰϞόΠϧσʔλ௨৴Λઃ ఆ͠࢖༻͢Δ - Apple αϙʔτ