Upgrade to Pro — share decks privately, control downloads, hide ads and more …

クックパッドのiOS更新との付き合い方 / CAMPFIRE iOS #2

クックパッドのiOS更新との付き合い方 / CAMPFIRE iOS #2

CAMPFIRE iOS #2 で発表した時の資料です。
iOSの更新がきたときにクックパッドではどういう事を考えてどう対応しているか話しました。

Tomohiro Moro

June 13, 2017
Tweet

More Decks by Tomohiro Moro

Other Decks in Programming

Transcript

  1. ࣗݾ঺հ • ໜ࿊ ஐେ - @slightair • iOS ΞϓϦΤϯδχΞ •

    ΫοΫύουגࣜձࣾ ٕज़෦ ϞόΠϧج൫άϧʔϓ • ࣾ಺ͷ։ൃ؀ڥ੔උɺαʔϏε։ൃ෦ॺͷٕज़తࢧԉ͕ۀ຿ • https://github.com/slightair
  2. Handoff ରԠ • iOSͱMacͷମݧΛҾ͖ܧ͙ػೳɺiOS8Ͱ௥Ճ͞Εͨ • ΫοΫύουΞϓϦͰ͸ΞϓϦ·ͨ͸ MacͰΈ͍ͯͨϨγϐը ໘Λ΋͏ยํʹҾ͖ܧ͙Α͏ʹ • ϦϦʔε౰ॳ

    apple-app-site-association΁ͷΞΫηε͕ΞϓϦ ࣗಈΞοϓσʔτʹ࿈ಈͯ͠ʁ೔෇Λ௒͑Δ࣌ʹεύΠΫ͢Δ ໰୊ʹૺ۰ .BD͔ΒJ1IPOFʹભҠͤ͞Α͏ΫοΫύου։ൃऀϒϩά IUUQUFDIMJGFDPPLQBEDPNFOUSZ
  3. AppleWatch ରԠ • AppleWatch ʹϨγϐΛදࣔ • ϨγϐͰࢦఆ͞Εͨ࣌ؒͷ λΠϚʔΛઃఆ • 2015/3/27

    ެ։ɺ2016/10/27 ऴྃ $PPLQBE"QQMF8BUDI"QQ஀ੜͷ෣୆ཪΫοΫύου։ൃऀϒϩά IUUQUFDIMJGFDPPLQBEDPNFOUSZ
  4. Swift • WWDC2014 ͰൃදɺΫοΫύουΞϓϦͰ͸ 2016/5 ͋ͨΓ͔Βར༻։࢝ • ΞϓϦΛૉૣ͘ɺ҆શʹॻ͖͍ͨ…→ϥΠϒϥϦͷબఆ΋ؚΊɺ৻ॏʹಋೖ ΛਐΊ͖ͯͨ •

    ϨΨγʔίʔυΛϦϑΝΫλϦϯάͨ͠Γ ObjC ͷ nullability, LightweightGenerics ͳͲΛ௥Ճͨ͠Γे෼ʹ४උΛͯ͠ಋೖ • Swift 2.3 Λܦ༝ͯ͠ 2016/12 ʹ͸ Swift 3 ʹҠߦ׬ྃ 4XJGUϚΠάϨʔγϣϯΫοΫύου։ൃऀϒϩά IUUQUFDIMJGFDPPLQBEDPNFOUSZ
  5. རศੑ޲্ͷͨΊ • 4.7 / 5.5 Πϯν ը໘ରԠ (ࠓͱͳͬͯ͸౰ͨΓલ) • Spotlight

    ͰϨγϐݕࡧ • Shared Web Credential • ͳͲͳͲ ୺຤΍OSͷਐԽʹΑͬͯΞϓϦͰͰ͖Δ͜ͱ͸ ͲΜͲΜ૿͍͑ͯΔ
  6. ϓϩϞʔγϣϯͷͨΊ • Handoff ରԠ • AppleWatch ରԠ (ݱࡏ͸ऴྃͯ͠Δ͚Ͳ…) ‣ Apple

    ͷαΠτʹࡌͤͯ΋ΒͬͨΓɺχϡʔεαΠτ ͳͲͰ࿩୊ʹͯ͠΋ΒͬͨΓ͠·ͨ͠ ৽ػೳΛར༻ͨ͠ΞϓϦ͸ AppStoreͰऔΓ্͛ ΒΕΔ͜ͱ΋͋ΓɺޮՌ͕ߴ͍
  7. มߋ఺ͷ৘ใऩू • ެࣜυΩϡϝϯτɺAPI diff ͳͲ • iOS ΍ Xcode ͷ

    beta ൛͕͖ͨΒ͙͢ࢼͦ͏ • beta ൛Λ৮͍ͬͯͯυΩοͱͨ͜͠ͱ ‣ UniversalLinks ͷόάͰҙਤͤͣ SPWeb ͷશͯͷϦϯΫ͔Β ΞϓϦىಈͪ͠Ό͏ → ్தͰಈ͖͕มΘͬͨ ‣ 10.3 beta2ɺΞϓϦ࡟আͰ Keychain ͷ৘ใ΋ফ͑Δ → औΓԼ͛ • όά͔ͳʁͬͯࢥͬͨΒόάϨϙʔτΛૹΖ͏ɺϑΥʔϥϜΛݟΑ͏ J04ͷϦϦʔεͰΫοΫύουʹى͖ͨ͜ͱΫοΫύου։ൃऀϒϩά IUUQUFDIMJGFDPPLQBEDPNFOUSZ
  8. ࣄۀ΁ͷӨڹ͕ͳ͍͔୳Δ • ίϯςϯπϒϩοΧʔ ‣ εϚʔτϑΥϯWebͷ޿ࠂͲ͏ͳΔͷ ‣ ΞϓϦͷ͜ͱ͚ͩؾʹ͢Ε͹͍͍Θ͚Ͱ΋ͳ͍ • App Transport

    Security ‣ Ͳ͜·ͰରԠ͢Ε͹͍͍ͷɺඞਢԽԆظͨ͠͠… ‣ ޿ࠂ SDK ͷ௨৴ͳͲ͚ࣗࣾͩͰղܾ͠ͳ͍΋ͷ΋͋Δ ޿ࠂϒϩοΧʔͷݕ஌ͱܭଌʹ͍ͭͯΫοΫύου։ൃऀϒϩά IUUQUFDIMJGFDPPLQBEDPNFOUSZ "QQ5SBOTQPSU4FDVSJUZͱωοτϫʔΫ޿ࠂΫοΫύου։ൃऀϒϩά IUUQUFDIMJGFDPPLQBEDPNFOUSZ
  9. ৽ػೳಋೖͷ൑அج४ • Ϣʔβ͕ศརʹͳΔػೳɺఏڙαʔϏεͱϚον͢Δ΋ͷ͸ ੵۃతʹऔΓ૊Ή • ػೳϦϦʔεޙʹऔΓԼ͛Δ͜ͱ΋͋Δ ‣ AppleWatch ͸զʑ͕αʔϏε֦େ૾Λ͏·͘ඳ͚ͳ͔ͬͨ ‣

    த్൒୺ͳରԠঢ়گͰ࢒ͯ͠΋ϢʔβɾαʔϏεఏڙଆ૒ํ ʹෆརӹͱ൑அ • ϦϦʔε͠ͳͯ͘΋ϓϩτλΠϓΛ࡞͍ͬͯͨɺͱ͍͏͜ͱ΋ ‣ tvOS ͷΞϓϦΛࢼ͠ʹ࡞ͬͨ
  10. ৽ػೳಋೖͷ൑அج४ • ։ൃޮ཰΍ύϑΥʔϚϯεɺηΩϡϦςΟ͕޲্͢ ΔͳΒɺ࠾༻ • ໌Β͔ʹ΍Βͳ͍ͱߦ͖٧·Δ΋ͷ͸΍Δ͔͠ͳ͍ ‣ Swift ΍ Xcode

    ͳͲͷ։ൃπʔϧͷߋ৽ ‣ ৽APIͷͨΊʹ࠷৽ͷ SDK Λ࢖͏ඞཁ͕͋Δ͜ͱ ΋ → Α΄Ͳͷཧ༝͕ͳ͔ͬͨΒ࠷৽Λ࢖͏