Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
クックパッドのiOS更新との付き合い方 / CAMPFIRE iOS #2
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Tomohiro Moro
June 13, 2017
Programming
1.8k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
クックパッドのiOS更新との付き合い方 / CAMPFIRE iOS #2
CAMPFIRE iOS #2 で発表した時の資料です。
iOSの更新がきたときにクックパッドではどういう事を考えてどう対応しているか話しました。
Tomohiro Moro
June 13, 2017
More Decks by Tomohiro Moro
See All by Tomohiro Moro
法改正を乗り越えるiOSアプリのリリース戦略
slightair
0
5k
たのしいクックパッドでのモバイルアプリエンジニア生活 / newgrads_event2020
slightair
0
730
CI/CD for mobile apps at Cookpad / Bitrise & Cookpad Developer Meetup
slightair
2
3.5k
コンセプトは「機械に人間が合わせる」クックパッドが実践する新しいリリースフローとは / @IT seminar 2018 12 14
slightair
0
670
動作確認のための社内アプリ配信サービスを新たに作った話 / iOSDC 2018
slightair
2
4.3k
RxSwift + API request + MVVM
slightair
9
2.8k
よくわかんないけど最近つくってるゲームで RxJava つかってみてる
slightair
3
2.2k
ゲームのプレイ動画を気軽にシェアしてもらう
slightair
3
3.1k
Other Decks in Programming
See All in Programming
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
3
180
thread_parallel_with_free-threaded_Python_and_NumPy.pdf
riku_sakamoto
0
350
FreeBSDでZabbixを動かす
kenkino
0
310
マイコン向けの軽量Ruby「PicoRuby」で各種デバイスを制御するネイティブアプリの実現手法
bash0c7
0
430
世界の中心で、AI(App Intents)をさけぶ ー App Intents中心設計の実践ガイド
touyou
0
640
Workers Cache を知る
syumai
0
120
Security issues being discussed on Web Platforms
petamoriken
0
1k
Vue Fes Japan 2026 タイムテーブル徹底解説
448jp
1
460
Intent as Code
shoppingjaws
6
1.1k
SONY CISC-NEWS NWS-1750 + NWB-225 フレームバッファの NetBSD/news68k ドライバ実装 / OSC2026Hiroshima
tsutsui
0
130
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
1
300
Kiroで創り、AgentCoreで繋ぐ!AWSで実践する「AI-DLC」から「AIエージェント統合」までの最新地図
licux
4
730
Featured
See All Featured
The Limits of Empathy - UXLibs8
cassininazir
1
680
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Designing Experiences People Love
moore
143
24k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
280
We Are The Robots
honzajavorek
0
380
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
550
Paper Plane (Part 1)
katiecoart
PRO
2
11k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
610
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.1k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
500
Transcript
ΫοΫύουͷ iOSߋ৽ͱͷ͖߹͍ํ 2017/06/12 CAMPFIRE iOS #2 ΫοΫύουגࣜձࣾ ໜ࿊ ஐେ
ࣗݾհ • ໜ࿊ ஐେ - @slightair • iOS ΞϓϦΤϯδχΞ •
ΫοΫύουגࣜձࣾ ٕज़෦ ϞόΠϧج൫άϧʔϓ • ࣾͷ։ൃڥඋɺαʔϏε։ൃ෦ॺͷٕज़తࢧԉ͕ۀ • https://github.com/slightair
༰ • աڈͷ iOS & Xcodeߋ৽ͷରԠࣄྫͷհ • ৽͍͠ػೳΛಋೖɾར༻͢Δཧ༝ • iOSͷߋ৽࣌ʹҙ͍ͯ͠Δͱ͜Ζ
• ৽ػೳಋೖͷஅج४
Handoff ରԠ • iOSͱMacͷମݧΛҾ͖ܧ͙ػೳɺiOS8ͰՃ͞Εͨ • ΫοΫύουΞϓϦͰΞϓϦ·ͨ MacͰΈ͍ͯͨϨγϐը ໘Λ͏ยํʹҾ͖ܧ͙Α͏ʹ • ϦϦʔεॳ
apple-app-site-associationͷΞΫηε͕ΞϓϦ ࣗಈΞοϓσʔτʹ࿈ಈͯ͠ʁΛ͑Δ࣌ʹεύΠΫ͢Δ ʹૺ۰ .BD͔ΒJ1IPOFʹભҠͤ͞Α͏ΫοΫύου։ൃऀϒϩά IUUQUFDIMJGFDPPLQBEDPNFOUSZ
AppleWatch ରԠ • AppleWatch ʹϨγϐΛදࣔ • ϨγϐͰࢦఆ͞Εͨ࣌ؒͷ λΠϚʔΛઃఆ • 2015/3/27
ެ։ɺ2016/10/27 ऴྃ $PPLQBE"QQMF8BUDI"QQੜͷཪΫοΫύου։ൃऀϒϩά IUUQUFDIMJGFDPPLQBEDPNFOUSZ
Swift • WWDC2014 ͰൃදɺΫοΫύουΞϓϦͰ 2016/5 ͋ͨΓ͔Βར༻։࢝ • ΞϓϦΛૉૣ͘ɺ҆શʹॻ͖͍ͨ…→ϥΠϒϥϦͷબఆؚΊɺ৻ॏʹಋೖ ΛਐΊ͖ͯͨ •
ϨΨγʔίʔυΛϦϑΝΫλϦϯάͨ͠Γ ObjC ͷ nullability, LightweightGenerics ͳͲΛՃͨ͠Γेʹ४උΛͯ͠ಋೖ • Swift 2.3 Λܦ༝ͯ͠ 2016/12 ʹ Swift 3 ʹҠߦྃ 4XJGUϚΠάϨʔγϣϯΫοΫύου։ൃऀϒϩά IUUQUFDIMJGFDPPLQBEDPNFOUSZ
100%Λࢦ͍ͯ͠ΔΘ͚Ͱͳ͍͕ɺׂ߹͕େ͖͚ ΕSwiftͷػೳΛϑϧͰ͑Δͱ͜Ζ͕͍ͱ͍͏ ͜ͱʹͳΔͣ… 2017/6 ݱࡏͷ Swift coverage
৽͍͠ػೳΛಋೖɾར༻͢Δཧ༝ • རศੑ্ͷͨΊ • ϓϩϞʔγϣϯͷͨΊ • ։ൃޮ্ͷͨΊ
རศੑ্ͷͨΊ • 4.7 / 5.5 Πϯν ը໘ରԠ (ࠓͱͳͬͯͨΓલ) • Spotlight
ͰϨγϐݕࡧ • Shared Web Credential • ͳͲͳͲ OSͷਐԽʹΑͬͯΞϓϦͰͰ͖Δ͜ͱ ͲΜͲΜ૿͍͑ͯΔ
ϓϩϞʔγϣϯͷͨΊ • Handoff ରԠ • AppleWatch ରԠ (ݱࡏऴྃͯ͠Δ͚Ͳ…) ‣ Apple
ͷαΠτʹࡌͤͯΒͬͨΓɺχϡʔεαΠτ ͳͲͰʹͯ͠ΒͬͨΓ͠·ͨ͠ ৽ػೳΛར༻ͨ͠ΞϓϦ AppStoreͰऔΓ্͛ ΒΕΔ͜ͱ͋ΓɺޮՌ͕ߴ͍
։ൃޮ্ͷͨΊ • Swift ͷར༻ • AutoLayoutؔ࿈ɺUIStackViewɺWebViewͳͲͳͲ • ඇਪʹͳͬͨ API ͷར༻ՕॴΛ͢ͱෛ࠴ʹ…
Ϣʔβʹݟ͑Δͱ͜Ζ͚ͩͰͳ͘։ൃͷ͠ ͢͞ɺ҆ఆੑ্ʹӨڹ͕͋Δ
iOSߋ৽࣌ʹҙ͍ͯ͠Δͱ͜Ζ • มߋͷใऩू • ࣄۀͷӨڹ • ։ൃڥͷมԽʹै • αϙʔτόʔδϣϯͷݟ͠
มߋͷใऩू • ެࣜυΩϡϝϯτɺAPI diff ͳͲ • iOS Xcode ͷ
beta ൛͕͖ͨΒ͙͢ࢼͦ͏ • beta ൛Λ৮͍ͬͯͯυΩοͱͨ͜͠ͱ ‣ UniversalLinks ͷόάͰҙਤͤͣ SPWeb ͷશͯͷϦϯΫ͔Β ΞϓϦىಈͪ͠Ό͏ → ్தͰಈ͖͕มΘͬͨ ‣ 10.3 beta2ɺΞϓϦআͰ Keychain ͷใফ͑Δ → औΓԼ͛ • όά͔ͳʁͬͯࢥͬͨΒόάϨϙʔτΛૹΖ͏ɺϑΥʔϥϜΛݟΑ͏ J04ͷϦϦʔεͰΫοΫύουʹى͖ͨ͜ͱΫοΫύου։ൃऀϒϩά IUUQUFDIMJGFDPPLQBEDPNFOUSZ
ࣄۀͷӨڹ͕ͳ͍͔୳Δ • ίϯςϯπϒϩοΧʔ ‣ εϚʔτϑΥϯWebͷࠂͲ͏ͳΔͷ ‣ ΞϓϦͷ͜ͱ͚ͩؾʹ͢Ε͍͍Θ͚Ͱͳ͍ • App Transport
Security ‣ Ͳ͜·ͰରԠ͢Ε͍͍ͷɺඞਢԽԆظͨ͠͠… ‣ ࠂ SDK ͷ௨৴ͳͲ͚ࣗࣾͩͰղܾ͠ͳ͍ͷ͋Δ ࠂϒϩοΧʔͷݕͱܭଌʹ͍ͭͯΫοΫύου։ൃऀϒϩά IUUQUFDIMJGFDPPLQBEDPNFOUSZ "QQ5SBOTQPSU4FDVSJUZͱωοτϫʔΫࠂΫοΫύου։ൃऀϒϩά IUUQUFDIMJGFDPPLQBEDPNFOUSZ
։ൃڥͷมԽʹै͢Δ • Xcode, Swift ͷόʔδϣϯΞοϓʹैͯ͠ɺ ҆ఆͨ͠ϦϦʔεαΠΫϧͷͨΊͷݒ೦Λ১ ͢Δ • Swift ͷϥΠϒϥϦπʔϧΛߋ৽͢Δ
• ։ൃΛଓ͚Δ͜ͱ͕Ͱ͖ͳ͍Α͏ͳঢ়گʹͳ Βͳ͍Α͏ؾΛΔ
αϙʔτόʔδϣϯͷݟ͠ • جຊతʹ৽ػೳ͕͑Δͷ৽͍͠όʔδϣϯͷ iOSͷΈ • جຊۙ2όʔδϣϯΛαϙʔτ͢Δํɺ ϢʔβൺΛݟͯஅ • Ϣʔβతʹૢ࡞͕ಘҙͰͳ͍ਓߟྀͯ͠ɺ OSߋ৽ͷҊΛ͖ͪΜͱߦ͑ΔΑ͏ʹ͢Δ
৽ػೳಋೖͷஅج४ • Ϣʔβ͕ศརʹͳΔػೳɺఏڙαʔϏεͱϚον͢Δͷ ੵۃతʹऔΓΉ • ػೳϦϦʔεޙʹऔΓԼ͛Δ͜ͱ͋Δ ‣ AppleWatch զʑ͕αʔϏε֦େ૾Λ͏·͘ඳ͚ͳ͔ͬͨ ‣
த్ͳରԠঢ়گͰͯ͠ϢʔβɾαʔϏεఏڙଆํ ʹෆརӹͱஅ • ϦϦʔε͠ͳͯ͘ϓϩτλΠϓΛ࡞͍ͬͯͨɺͱ͍͏͜ͱ ‣ tvOS ͷΞϓϦΛࢼ͠ʹ࡞ͬͨ
৽ػೳಋೖͷஅج४ • ։ൃޮύϑΥʔϚϯεɺηΩϡϦςΟ্͕͢ ΔͳΒɺ࠾༻ • ໌Β͔ʹΒͳ͍ͱߦ͖٧·ΔͷΔ͔͠ͳ͍ ‣ Swift Xcode
ͳͲͷ։ൃπʔϧͷߋ৽ ‣ ৽APIͷͨΊʹ࠷৽ͷ SDK Λ͏ඞཁ͕͋Δ͜ͱ → Α΄Ͳͷཧ༝͕ͳ͔ͬͨΒ࠷৽Λ͏
·ͱΊ • ఏڙαʔϏεΞϓϦʹΑΔͱࢥ͏͕ɺϢʔβ͕ศརʹ ͳΔ৽ػೳੵۃతʹ࠾༻͍͖͍ͯͨ͠ • όʔδϣϯΞοϓʹΑΔมߋͷใऩू͔ͬ͠ΓΖ͏ɺ ৭ʑͳ໘͔ΒӨڹ͕ͳ͍͔୳Δ • ҆ఆͨ͠ϦϦʔεαΠΫϧΛճͨ͢Ίɺ։ൃڥʹؔΘΔมߋ ʹૉૣ͘ै͢Δ͠
• ߹ʹΑͬͯόάϨϙʔτΛग़ͨ͠ΓϑΥʔϥϜͰฉ͍ͯΈΔ ͷ͕Α͍