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
On-Demand Resourcesを意識した コンテンツ制作ワークフロー
Search
Noritaka Kamiya
December 16, 2015
Programming
2.8k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
On-Demand Resourcesを意識した コンテンツ制作ワークフロー
Noritaka Kamiya
December 16, 2015
More Decks by Noritaka Kamiya
See All by Noritaka Kamiya
キラリと光るテクニック、アプリをデモするときの心構え/iOSDC Japan 2018
nolili
4
3.7k
WWDC Pre meeting
nolili
1
3.6k
FastLane with Swift
nolili
0
190
App Transport Securityとローカルネットワーキング/iOSDC Japan 2017
nolili
1
1.7k
iOS Test Night #4
nolili
0
4.2k
SwiftFriendlyObjective-C/try! Swift Tokyo 2017 RejectCon
nolili
1
1.1k
iOSアプリ開発のCI/CD環境とユビレジでのtry / CI CDNight
nolili
1
1.8k
ユビレジiOSアプリ開発のCI/CD環境 / iOS Test Night #1
nolili
5
2.5k
Modern Core Data(iOS 10)
nolili
0
1.4k
Other Decks in Programming
See All in Programming
APNsからLive Activityを開始する話
yumnumm
0
150
残高管理から台帳サービスへの進化
artoy
0
170
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
160
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
34
15k
Workers Cache を知る
syumai
0
340
カツオ、ご期待ください
suneo3476
0
150
Verilogで学ぶCPU自作入門.pdf
uyuki234
8
4k
Java 27新機能 / Java 27 new features
kishida
2
200
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
450
setup-vp GitLab対応の裏側
naokihaba
0
150
Vue Fes Japan の “作る側”に関わってみて
naokihaba
0
120
Androidだけじゃない、DroidKaigiで広がった私の技術スタック
akkeylab
0
120
Featured
See All Featured
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
490
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
480
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.2k
Ruling the World: When Life Gets Gamed
codingconduct
0
390
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Google's AI Overviews - The New Search
badams
0
1.6k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
We Are The Robots
honzajavorek
0
390
The #1 spot is gone: here's how to win anyway
tamaranovitovic
4
1.2k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
580
The Language of Interfaces
destraynor
162
27k
Heart Work Chapter 1 - Part 1
lfama
PRO
10
37k
Transcript
On-Demand ResourcesΛҙࣝͨ͠ ίϯςϯπ੍࡞ϫʔΫϑϩʔ @nolili Noritaka Kamiya
None
None
None
UW04ʹΞϓϦΛҠ২͢Δͧʂ w J04Y࣌ʹ࡞ͬͨͷ w 6*,JU "VEJP2VFVF4FSWJDFT w 4UPSZCPBSEΈͳ͓ͨ͠Β΄ͱΜͲಈ͍ͨ
ϑΝΠϧαΠζ͕େ͖͗͢Δʂ w UW04ͷΞϓϦɿόϯυϧαΠζʹ.#ͷ੍ݶ w 4BOECPYͷσʔλอଘෆՄ w Γ0O%FNBOE3FTPVSDFTͰ
0O%FNBOE3FTPVSDFT w ΞϓϦຊମͱผͰඞཁͳσʔλ͕ൃੜͨ࣌͠Ͱ αʔό͔ΒඞཁͳσʔλΛऔಘ͢Δ w ॳճμϯϩʔυ࣌ͷ௨৴ΛݮΒͤΔ
Ϣʔεέʔε w ϓϨΠ͞ΕΔ͔Θ͔Βͳ͍ޙͷεςʔδͷσʔλ w ՝ۚͨ͠Ϣʔβ͔͠Θͳ͍σʔλ w ετϨʔδ༰ྔ͕(#ͷσόΠεʹ༏͍͠ w UW04Ҏ֎Ͱ͑Δ
try!
5BHΛ͚ͭΔ w 9DPEFͰϦιʔεʹUBHΛ͚ͭΔ
ϦιʔεʹΞΫηε͢Δ let request = NSBundleResourceRequest(tags: Set(["town"]))
ϦιʔεʹΞΫηε͢Δ request1.beginAccessingResourcesWithCompletionHandler { error in guard error == nil else
{ return } guard let image = UIImage(named: "myImage") else { fatalError("image not found") } print(image) }
3FMFBTF request.endAccessingResources()
ʊਓਓਓਓਓਓਓਓʊ ʼɹࢀরΧϯλɹʻ ʉ:?:?:?:?:?:?:ʉ
None
མͱ݀͠ w "QQ4UPSFͰ͢Δ߹"QQMFͷαʔόͰϗ εςΟϯά͢Δඞཁ͕͋Δ w ։ൃதಠࣗͷαʔό͕͑Δ w &OUFSQSJTF༻ΞϓϦϓϩμΫγϣϯͰಠࣗαʔ ό͕͑Δ
ςετ࣌ʹಠࣗαʔόʹΞηοτΛஔ͘ w CVJMEσΟϨΫτϦͷσʔλΛอଘ͢Δ w 0SHBOJ[FS͔ΒσʔλΛॻ͖ग़͢ w "44&5@1"$,@."/*'&45@63-@13&'*9Λઃఆ
4FSWFS ODR 2015-12-05 16-31-40 python -m SimpleHTTPServer Serving HTTP on
0.0.0.0 port 8000 ... 127.0.0.1 - - [05/Dec/2015 16:35:40] "HEAD /OnDemandResources/li.noli.ODR.2nd.assetpack HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 16:35:40] "GET /OnDemandResources/li.noli.ODR.2nd.assetpack HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 16:35:44] "HEAD /OnDemandResources/li.noli.ODR.1st.assetpack HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 16:35:44] "GET /OnDemandResources/li.noli.ODR.1st.assetpack HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 17:07:03] "GET /OnDemandResources/AssetPackManifest.plist HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 17:51:08] "HEAD /OnDemandResources/li.noli.ODR.2nd.assetpack HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 17:51:13] "GET /OnDemandResources/li.noli.ODR.2nd.assetpack HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 17:51:14] "HEAD /OnDemandResources/li.noli.ODR.1st.assetpack HTTP/1.1" 200 - 127.0.0.1 - - [05/Dec/2015 17:51:14] "GET /OnDemandResources/li.noli.ODR.1st.assetpack HTTP/1.1" 200 -
མͱ݀͠ɹͦͷ w LJMM͞Εͨ͋ͱ͍ͭσʔλ͕ফ͑Δ͔Θ͔Βͳ͍ w ΞϓϦ͋ͨΓ࠷େ(#ͷϦιʔεΛѻ͑Δ w ಉ࣌ʹ CFHJO"DDFTTJOH3FTPVSDFT8JUI$PNQMFUJPO)BO EMFSͰ͖Δͷ(#·Ͱ w
͍Βͳ͘ͳͬͨΒFOE"DDFTTJOH3FTPVSDFTΛ ͬͯΞΫηεΛࢭΊΔ
*OJUJBM*OTUBMM5BH w "QQ4UPSFͰΞϓϦΠϯετʔϧ࣌ʹಉ࣌ʹΠϯε τʔϧ͞ΕΔ w ͳ͔ͥ"QQ*%ͱ1SPWJTJPOJOH1SPpMFͰ1VTI /PUJpDBUJPOΛ༗ޮʹ͓͔ͯ͠ͳ͍ͱ͍͚ͳ͔ͬ ͨɻʢ9DPEFͰαϒϛοτ࣌ʹΤϥʔʣ
"QQ4UPSF.#ͷน w .#ͷ੍ݶʹؚ·ΕΔͷ w "QQMJDBUJPO#VOEMF ΞϓϦຊମ w *OJUJBM*OTUBMM
0O%FNBOE3FTPVSDFTΛҙࣝͨ͠ ίϯςϯπ੍࡞ w ͋Δ͋Δ w Τϯδϯ͚ͩ࡞ͬͯɺͱΓ͋͑ͣ৹ࠪ௨ͯ͠ɺ͋ͱ ͔ΒαʔόͷϦιʔεೖΕସ͑Α͏ʂ
0O%FNBOE3FTPVSDFTΛҙࣝͨ͠ ίϯςϯπ੍࡞ w ͋Δ͋Δ w Τϯδϯ͚ͩ࡞ͬͯɺͱΓ͋͑ͣ৹ࠪ௨ͯ͠ɺ͋ͱ ͔ΒαʔόͷϦιʔεೖΕସ͑Α͏ʂ X
0O%FNBOE3FTPVSDFTΛҙࣝͨ͠ ίϯςϯπ੍࡞ 㾎શͯͷΞηοτ͕ἧ͍ͬͯΔ͜ͱ 㾎దͳUBH͕ৼΒΕ͍ͯΔ͜ͱ 㾎ڊେͳσʔλͷ༗ແ
0O%FNBOE3FTPVSDFTΛҙࣝͨ͠ ίϯςϯπ੍࡞ 㾎Ͳ͜ͰϢʔβΛ͍͍ͨͤͯͷ͔ʁ 㾎ॳճىಈ࣌ʹΦϑϥΠϯͷϢʔβ͕Ͳͷ֊·Ͱί ϯςϯπʹΞΫηε͢Δͷ͔ʁ 㾎4VCNJU࣌ʹτϥϒϧൃ֮ͭΒ͍ 㾎5FTUqJHIUͰςετ͢Δ
3FGFSFODFT 0O%FNBOE3FTPVSDFT(VJEF IUUQTEFWFMPQFSBQQMFDPNKQEPDVNFOUBUJPO'JMF.BOBHFNFOU$PODFQUVBM 0O@%FNBOE@3FTPVSDFT@(VJEF "QQ5IJOOJOH IUUQTEFWFMPQFSBQQMFDPNMJCSBSZUWPTEPDVNFOUBUJPO*%&T$PODFQUVBM "QQ%JTUSJCVUJPO(VJEF"QQ5IJOOJOH"QQ5IJOOJOHIUNM &YBNQMF$PEF0%34UVEZ IUUQTHJUIVCDPNOPMJMJ0%34UVEZ
On-Demand ResourcesΛҙࣝͨ͠ ίϯςϯπ੍࡞ϫʔΫϑϩʔ @nolili Noritaka Kamiya