Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
iOSのPhoto Libraryアクセス権限を見直してみよう
Search
おしん
December 15, 2023
Programming
1
210
iOSのPhoto Libraryアクセス権限を見直してみよう
mobile.stmn#3のLTで発表時に用いた資料です。
おしん
December 15, 2023
Tweet
Share
More Decks by おしん
See All by おしん
モバイルアプリへのRemoteConfigの恩恵
shincarpediem
2
96
Swift UI デフォルト引数クイズ
shincarpediem
1
110
よりアプリらしさを出すために
shincarpediem
1
110
Concurrency Warningが 沢山出たから聞いてほしい ~Xcode 16.1 Beta 編~
shincarpediem
1
210
SwiftUI登場前のVIPERアプリでもSwiftUIをスムーズに導入できた話
shincarpediem
3
1.6k
VIPERアプリにSwiftUIを導入してみた
shincarpediem
1
410
Other Decks in Programming
See All in Programming
Web Components で実現する Hotwire とフロントエンドフレームワークの橋渡し / Bridging with Web Components
da1chi
3
1.5k
パフォーマンスチューニングで Web 技術を深掘り直す
progfay
18
4.8k
株式会社 Sun terras カンパニーデック
sunterras
0
180
Чего вы не знали о строках в Python – Василий Рябов, PythoNN
sobolevn
0
150
Back to the Future: Let me tell you about the ACP protocol
terhechte
0
120
iOSDC.pdf
chronos2500
2
650
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1k
iOS 17で追加されたSubscriptionStoreView を利用して5分でサブスク実装チャレンジ
natmark
0
480
WebエンジニアがSwiftをブラウザで動かすプレイグラウンドを作ってみた
ohmori_yusuke
0
170
GraphQL×Railsアプリのデータベース負荷分散 - 月間3,000万人利用サービスを無停止で
koxya
1
1k
私達はmodernize packageに夢を見るか feat. go/analysis, go/ast / Go Conference 2025
kaorumuta
2
450
CI_CD「健康診断」のススメ。現場でのボトルネック特定から、健康診断を通じた組織的な改善手法
teamlab
PRO
0
160
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.4k
The Cult of Friendly URLs
andyhume
79
6.6k
Automating Front-end Workflow
addyosmani
1371
200k
Documentation Writing (for coders)
carmenintech
75
5k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Why Our Code Smells
bkeepers
PRO
339
57k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
51k
Balancing Empowerment & Direction
lara
4
670
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
45
2.5k
Transcript
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE $PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE J04ͷ1IPUP-JCSBSZΞΫηεݖݶ Λݟͯ͠ΈΑ͏ ੨ৼҰ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 2 8IPBN* ੨ৼҰ!1VOLE J04EFWFMPQFS TUNO JOD J04%$Ͱ͠·ͨ͠
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 3 8IPBN* ੨ৼҰ!1VOLE J04EFWFMPQFS TUNO JOD J04%$Ͱ͠·ͨ͠ NBJNBJʹۈ͠ΜͰ·͢
IUUQTKBXJLJQFEJBPSHXJLJ.BJNBJ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 4 1IPUP-JCSBSZͬͯʁ J1IPOFJ1BEͳͲͷJ04σόΠε্Ͱ ࣸਅϏσΦΛཧ͢ΔͨΊͷσʔλϕʔε
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 5 1IPUP-JCSBSZͬͯʁ J1IPOFJ1BEͳͲͷJ04σόΠε্Ͱ ࣸਅϏσΦΛཧ͢ΔͨΊͷσʔλϕʔε ࣸਅϏσΦͷදࣔ ΞϧόϜͷ࡞ͱཧ ݕࡧػೳ Ϋϥυಉظ
ڞ༗ػೳ όοΫΞοϓͱϦετΞ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 6 Α͘͜Μͳը໘͕ग़͖ͯ·ͤΜ͔ʁ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 7 Α͘͜Μͳը໘͕ग़͖ͯ·ͤΜ͔ʁ ΞϓϦͷ༷࣍ୈͰJ04Ҏ߱Ξϥʔτෆཁ ˞9 5XJUUFS ඞཁͱஅͯ͠ग़͍ͯ͠Δͱࢥ͍·͢
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 8 ࣍ J04Ͱى͖ͨɺਪ͞ΕΔը૾ϐοΧʔͷมߋ ϐοΧʔʹมߋ͕ى͖ͨཧ༝ ฐࣾΞϓϦͷ࣮ͷݟ͠ Ռ ·ͱΊ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 9 ࣍ J04Ͱى͖ͨɺਪ͞ΕΔը૾ϐοΧʔͷมߋ ϐοΧʔʹมߋ͕ى͖ͨཧ༝ ฐࣾΞϓϦͷ࣮ͷݟ͠ Ռ ·ͱΊ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 10 J04Ͱى͖ͨɺਪ͞ΕΔը૾ϐοΧʔͷมߋ J04·Ͱ ɹ6**NBHF1JDLFS$POUSPMMFS J04͔Β ɹ1)1JDLFS7JFX$POUSPMMFS
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 11 J04Ͱى͖ͨɺਪ͞ΕΔը૾ϐοΧʔͷมߋ J04·Ͱ ɹ6**NBHF1JDLFS$POUSPMMFS J04͔Β ɹ1)1JDLFS7JFX$POUSPMMFS ը૾ϐοΧʔΫϥε 1IPUP-JCSBSZͷΞΫηεݖཧ୲͏
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 12 J04Ͱى͖ͨɺਪ͞ΕΔը૾ϐοΧʔͷมߋ J04·Ͱ ɹ6**NBHF1JDLFS$POUSPMMFS J04͔Β ɹ1)1JDLFS7JFX$POUSPMMFS ը૾ϐοΧʔΫϥε 1IPUP-JCSBSZͷΞΫηεݖཧ୲͏
ΞϓϦ͕1IPUP-JCSBSZʹ ΞΫηε͠ͳ͍Έʹͳͬͨ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 13 J04Ͱى͖ͨɺਪ͞ΕΔը૾ϐοΧʔͷมߋ J04·Ͱ ɹ6**NBHF1JDLFS$POUSPMMFS J04͔Β ɹ1)1JDLFS7JFX$POUSPMMFS ը૾ϐοΧʔΫϥε 1IPUP-JCSBSZͷΞΫηεݖཧ୲͏
ΞϓϦ͕1IPUP-JCSBSZʹ ΞΫηε͠ͳ͍Έʹͳͬͨ 1)1JDLFS7JFX$POUSPMMFSͰ ڐΛϢʔβʔʹٻΊΔඞཁ͕ͳ͍
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 14 ࣍ J04Ͱى͖ͨɺਪ͞ΕΔը૾ϐοΧʔͷมߋ ϐοΧʔʹมߋ͕ى͖ͨཧ༝ ฐࣾΞϓϦͷ࣮ͷݟ͠ Ռ ·ͱΊ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 15 ϐοΧʔʹมߋ͕ى͖ͨཧ༝ IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 16 ϐοΧʔʹมߋ͕ى͖ͨཧ༝ zʹΘͨΓɺࢲͨͪݸਓͷࣸਅϥΠϒϥϦ͕ ेສͷࣸਅϏσΦʹ͢ΔͷΛݟ͖ͯ·ͨ͠ɻ ΄ͱΜͲͷ߹ɺϢʔβʔࣗͷϥΠϒϥϦશମ ͷΞΫηεΛୈࡾऀʹڐՄ͢Δ͜ͱΛΜͰ͍· ͤΜɻz
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 17 ϐοΧʔʹมߋ͕ى͖ͨཧ༝ zϢʔβʔ੍ޚ͕େ͖͘ਪਐ͞Ε͍ͯΔ͜ͱΛߟ͑Δ ͱɺࠓҰาԼ͕ͬͯɺ ͦͦΞϓϦ͕ϢʔβʔʹࣸਅϥΠϒϥϦͷΞ ΫηεΛཁٻ͢Δඞཁ͕͋Δ͔Ͳ͏͔Λࣗ͢Δʹ ઈͷͰ͢ɻ ΄ͱΜͲͷΞϓϦͷ͑ʮϊʔʯͰ͢ɻz
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 18 ϐοΧʔʹมߋ͕ى͖ͨཧ༝ zଟ͘ͷ߹ɺ͜ͷϨϕϧͷΞΫηεΛཁٻ͢Δඞཁ ͳ͘ɺ ͦΕͳ͠ͰΑΓγϯϓϧͰ༏ΕͨΤΫεϖϦΤϯε ΛϢʔβʔʹఏڙͰ͖·͢ɻz
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 19 ϐοΧʔʹมߋ͕ى͖ͨཧ༝ zଟ͘ͷ߹ɺ͜ͷϨϕϧͷΞΫηεΛཁٻ͢Δඞཁ ͳ͘ɺ ͦΕͳ͠ͰΑΓγϯϓϧͰ༏ΕͨΤΫεϖϦΤϯε ΛϢʔβʔʹఏڙͰ͖·͢ɻz ΞϓϦ͕1IPUP-JCSBSZʹΞΫηε͢Δࡍ ڐΞϥʔτΛදࣔ͠ͳ͍
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 20 ࣍ J04Ͱى͖ͨɺਪ͞ΕΔը૾ϐοΧʔͷมߋ ϐοΧʔʹมߋ͕ى͖ͨཧ༝ ฐࣾΞϓϦͷ࣮ͷݟ͠ Ռ ·ͱΊ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 21 ฐࣾΞϓϦͷ࣮ͷݟ͠ طଘͷ࣮ J04Ҏ্Ͱɺ1)1JDLFS7JFX$POUSPMMFSΛ༻͍ ͍ͯΔ ͔͠͠ɺ1IPUP-JCSBSZͷΞΫηεݖݶΛݟʹߦ ࣮͘Λ͍ͯ͠Δ ͦͯ͠ɺݖݶ͕ෆेͳΒΞϥʔτΛग़ͯ͠ڐΛ
ଅ͍ͯ͠Δ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 22 ฐࣾΞϓϦͷ࣮ͷݟ͠ ͋Δ͖࣮ͱ༷ 1IPUP-JCSBSZͷΞΫηεݖݶΛݟʹߦ͔ͳ͍Α ͏ʹ͢Δ طଘͷݖݶ͕ෆेͰɺΞϥʔτΛग़ͯ͠ڐ Λଅ͢͜ͱΛΊΔ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 23 ฐࣾΞϓϦͷ࣮ͷݟ͠ ͋Δ͖࣮ͱ༷ 1IPUP-JCSBSZͷΞΫηεݖݶΛݟʹߦ͔ͳ͍Α ͏ʹ͢Δ طଘͷݖݶ͕ෆेͰɺΞϥʔτΛग़ͯ͠ڐ Λଅ͢͜ͱΛΊΔ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 24 ฐࣾΞϓϦͷ࣮ͷݟ͠
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 25 ࣍ J04Ͱى͖ͨɺਪ͞ΕΔը૾ϐοΧʔͷมߋ ϐοΧʔʹมߋ͕ى͖ͨཧ༝ ฐࣾΞϓϦͷ࣮ͷݟ͠ Ռ ·ͱΊ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 26 Ռ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 27 ·ͱΊ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 28 ΞϓϦͷ༷࣍ୈͰ 1IPUP-JCSBSZͷΞΫηεݖΛ Ϣʔβʔʹڐͯ͠Β͏ͨΊͷ Ξϥʔτෆཁ🙆
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 29 ͓·͚
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 30 ಄ͰݟͨΞϥʔτ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 31 ಄ͰݟͨΞϥʔτ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 32 ಄ͰݟͨΞϥʔτ J04͔ΒՃ͞Εͨɺ৽͍͠ݖݶʹΑΔͷ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 33 ಄ͰݟͨΞϥʔτ J04͔ΒՃ͞Εͨɺ৽͍͠ݖݶʹΑΔͷ QSFTFOU-JNJUFE-JCSBSZ1JDLFSϝ ιουΛݺͼग़͢ 1)1IPUP-JCSBSZ$IBOHF0CTFSW
FS"1*Λ௨ͯ͡ɺϢʔβʔͷબ ʹൃੜ͢ΔมߋΛࢹ͢Δ ৄ͘͠👇 IUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOQIPUPLJU QIQIPUPMJCSBSZQSFTFOUMJNJUFEMJCSBSZQJDLFS