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
写真と動画の部分的なアクセス権について
Search
カーキ
August 11, 2023
Technology
0
250
写真と動画の部分的なアクセス権について
カーキ
August 11, 2023
Tweet
Share
More Decks by カーキ
See All by カーキ
好きから始まるローカルキャリア
takarkiz
0
4
Composeで敷き詰めるUIを どうやって作るか
takarkiz
0
78
TaskStackBuilderの紹介
takarkiz
0
29
Gemini API でアプリをつくりたい!
takarkiz
0
190
名古屋で勉強会を主催する3つの理由
takarkiz
0
200
GitHub Issue を利用したチケット管理
takarkiz
0
100
Gitの仕組みを理解しよう
takarkiz
0
110
Jetpack Compose でやってイイこと・ダメなこと
takarkiz
2
580
もっとJetpackComposeと仲良くなる
takarkiz
0
320
Other Decks in Technology
See All in Technology
AIのAIによるAIのための出力評価と改善
chocoyama
0
510
知識を整理して未来を作る 〜SKDとAI協業への助走〜
yosh1995
0
150
rubygem開発で鍛える設計力
joker1007
1
120
キャディでのApache Iceberg, Trino採用事例 -Apache Iceberg and Trino Usecase in CADDi--
caddi_eng
0
170
UIテスト自動化サポート- Testbed for XCUIAutomation practice
notoroid
0
110
成立するElixirの再束縛(再代入)可という選択
kubell_hr
0
930
生成AIでwebアプリケーションを作ってみた
tajimon
2
120
Claude Code Actionを使ったコード品質改善の取り組み
potix2
PRO
4
1.6k
米国国防総省のDevSecOpsライフサイクルをAWSのセキュリティサービスとOSSで実現
syoshie
2
810
Observability infrastructure behind the trillion-messages scale Kafka platform
lycorptech_jp
PRO
0
130
エンジニア向け技術スタック情報
kauche
0
110
AIにどこまで任せる?実務で使える(かもしれない)AIエージェント設計の考え方
har1101
3
1.2k
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
It's Worth the Effort
3n
184
28k
Code Reviewing Like a Champion
maltzj
524
40k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.3k
4 Signs Your Business is Dying
shpigford
184
22k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
How to train your dragon (web standard)
notwaldorf
92
6.1k
Unsuck your backbone
ammeep
671
58k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
Transcript
"OESPJE.FFUVQ/BHPZB!Ϡϑʔ໊ݹ5FDI.FFUVQίϥϘ "OESPJE͕དྷΔͧ ४උ͍͍͔ʁ ʮϝσΟΞͷ෦తͳΞΫηεݖʯʹؙ͍ͭͯͬͱཧղͯ͠උ͑ΔՆ
ࣗݾհ w ΧʔΩʢ9!LIBLJ@OHZʣ w גࣜձࣾελϝϯ w ϓϩμΫτ։ൃ෦ϞόΠϧΞϓϦ(ॴଐ w -JWFOVQ/BHPZBӡӦ w
ᰤࢠѪՈ🥟 w ՆΞϩϋͰग़ࣾ
قઅɺՆ
"OESPJE͕དྷΔʜʂ
ͦΖͦΖඋ͍͑ͯ͜͏
"OESPJE.FFUVQ/BHPZB!Ϡϑʔ໊ݹ5FDI.FFUVQίϥϘ ʮࣸਅͱಈըͷ෦తͳΞΫηεݖʯ ʹؙ͍ͭͯͬͱཧղ͢Δ
ʮ෦తͳΞΫηεݖʯͱ
ΞϓϦ͕ͷࣸਅಈը ΞΫηε͢Δͷʹඞཁͳݖݶ ࣸਅಈըͷΞΫηεݖ
ΞϓϦ͕ͷࣸਅಈը ΞΫηε͢Δͷʹඞཁͳݖݶ ࣸਅಈըͷΞΫηεݖ "OESPJEҎલ 3&"%@&95&3/"-@4503"(& "OESPJEΑΓ 3&"%@.&%*"@*."(&4 3&"%@.&%*"@7*%&0
෦తͳΞΫηεݖʹ͍ͭͯ ैདྷͷΞΫηεݖ ڐՄ σόΠε্ͷશͯͷࣸਅͱಈըͷϥΠϒϥϦͷશͳΞΫηεΛڐՄ ڐՄ͠ͳ͍ ͯ͢ͷΞΫηεΛڋ൱ ڐՄɾڋ൱ͷ͔̎͠ͳ͍
෦తͳΞΫηεݖʹ͍ͭͯ ৽͍͠Φϓγϣϯ͕Ճ /&8 ΞϓϦͰͷ༻ΛڐՄ͢ΔಛఆͷࣸਅͱಈըΛબ ࣸਅͱಈըΛબ ͯ͢ڐՄ σόΠε্ͷશͯͷࣸਅͱಈըͷϥΠϒϥϦͷશͳΞΫηεΛڐՄ ڐՄ͠ͳ͍ ͯ͢ͷΞΫηεΛڋ൱ Ϣʔβʔ͕બͨࣸ͠ਅͱಈըͷΈΞΫηεՄೳʹͳΔ
"OESPJE "OESPJE
"OESPJE Ϣʔβʔଆ͔ΒΞϓϦ͕ ΞΫηεՄೳͳϝσΟΞ ϑΝΠϧΛબͰ͖ΔΑ ͏ʹͳͬͨ
ͳͥʮ෦తͳΞΫηεʯ͕ඞཁ͔ (PPHMF*0ͷ֘ηογϣϯΑΓ ϢʔβʔͷϓϥΠόγʔΛकΔͨΊͷݖݶ 1SJWBDZ4FDVSJUZ ݩʑͷ"OESPJEͷݖݶͰɺڐՄ͞Εͨ߹ͯ͢ͷϝσΟΞϑΝΠϧ ͷΞΫηε͕ڐՄ͞Εͯ͠·͏ ηογϣϯಈըˠ
ͳͥʮ෦తͳΞΫηεʯ͕ඞཁ͔ ࣸਅબπʔϧΛ͏͜ͱΛڧ͓͘קΊ͠·͢ɻ wɺొ wબͨࣸ͠ਅಈըͷΈͷΞΫηεΛڐՄ͢Δπʔϧ wϢʔβʔͷݖݶ֬ೝෆཁ wϢʔβʔʹͱͬͯͷࣸਅબͷମݧมΘΒͳ͍ ࣸਅબπʔϧͱɺ
ͳͥʮ෦తͳΞΫηεʯ͕ඞཁ͔ ࣸਅબπʔϧΛ͏͜ͱΛڧ͓͘קΊ͠·͢ɻ wબͨࣸ͠ਅಈըͷΈͷΞΫηεΛڐՄ͢Δπʔϧ wϢʔβʔͷݖݶ֬ೝෆཁ wϢʔβʔʹͱͬͯͷࣸਅબͷମݧมΘΒͳ͍ ࣸਅબπʔϧͱɺ ࣸਅબπʔϧ ΞϓϦͷΞΫηεΛڐ͢ϝσΟΞϑΝΠϧબ
ͳͥʮ෦తͳΞΫηεʯ͕ඞཁ͔ ࣸਅબπʔϧΛ͏͜ͱΛڧ͓͘קΊ͠·͢ɻ ࣸਅબπʔϧΛ͓͏ʂ wબͨࣸ͠ਅಈըͷΈͷΞΫηεΛڐՄ͢Δπʔϧ wϢʔβʔͷݖݶ֬ೝෆཁ wϢʔβʔʹͱͬͯͷࣸਅબͷମݧมΘΒͳ͍ ࣸਅબπʔϧͱɺ
ɹΞϓϦͰαϙʔτͰ͖ΔΑ͏ ৽͍͠ݖݶ͕ొ 3&"%@.&%*"@7*46"-@64&3@4&-&$5&% GPS"OESPJE
͜ͷݖݶΛ͏ͱ Կ͕ҧ͏ͷ͔ʁ
৽͍͠ݖݶΛར༻ͨ͠߹ 3&"%@.&%*"@7*46"-@64&3@4&-&$5&% ʮࣸਅͱಈըΛબʯΛબͿ ͭ·ΓͲ͏͍͏͜ͱʁ ʮ3&"%@.&%*"@*."(&4ʯͱʮ3&"%@.&%*"@7*%&0ʯݖݶڋ൱͞ΕΔ ʮ3&"%@.&%*"@7*46"-@64&3@4&-&$5&%ʯݖݶ͕༩͞ΕɺϢʔβʔͷࣸਅͱ ಈըʹҰ࣌తʹΞΫηεͰ͖Δ ΞϓϦ͕ଞͷࣸਅಈըʹΞΫηε͢Δඞཁ͕͋Δ߹ɺʮ3&"%@.&%*"@*."(&4ʯ ͔ʮ3&"%@.&%*"@7*%&0ʯݖݶΛखಈͰ࠶ϦΫΤετ͢Δඞཁ͕͋Δ
ϢʔβʔʹͱͬͯඞཁͳϝσΟΞͷΈެ։Ͱ͖Δ ʮ3&"%@.&%*"@*."(&4ʯͱʮ3&"%@.&%*"@7*%&0ʯݖݶڋ൱͞ΕΔ ʮ3&"%@.&%*"@7*46"-@64&3@4&-&$5&%ʯݖݶ͕༩͞ΕɺϢʔβʔͷࣸਅͱ ಈըʹҰ࣌తʹΞΫηεͰ͖Δ ΞϓϦ͕ଞͷࣸਅಈըʹΞΫηε͢Δඞཁ͕͋Δ߹ɺʮ3&"%@.&%*"@*."(&4ʯ ͔ʮ3&"%@.&%*"@7*%&0ʯݖݶΛखಈͰ࠶ϦΫΤετ͢Δඞཁ͕͋Δ ΞϓϦͷݖݶͷঢ়ଶͱͯ͠ຖճ֬ೝ͢ΔʹͳΔ ৽͍͠ݖݶΛར༻ͨ͠߹ɺͭ·Γ͜͏ ͋͘·ͰϢʔβʔ͕બͨ͠ϝσΟΞϑΝΠϧʹରͯ͠ͷݖݶ શϝσΟΞϑΝΠϧͷݖݶ͕ඞཁͳ߹ɺ࠶ϦΫΤετ͕ඞཁ
ਖ਼֬ʹڐՄ͞Ε͍ͯΔΘ͚Ͱͳ͍
ϢʔβʔʹͱͬͯඞཁͳϝσΟΞͷΈެ։Ͱ͖Δ ʮ3&"%@.&%*"@*."(&4ʯͱʮ3&"%@.&%*"@7*%&0ʯݖݶڋ൱͞ΕΔ ʮ3&"%@.&%*"@7*46"-@64&3@4&-&$5&%ʯݖݶ͕༩͞ΕɺϢʔβʔͷࣸਅͱ ಈըʹҰ࣌తʹΞΫηεͰ͖Δ ΞϓϦ͕ଞͷࣸਅಈըʹΞΫηε͢Δඞཁ͕͋Δ߹ɺʮ3&"%@.&%*"@*."(&4ʯ ͔ʮ3&"%@.&%*"@7*%&0ʯݖݶΛखಈͰ࠶ϦΫΤετ͢Δඞཁ͕͋Δ ͋͘·ͰϢʔβʔ͕બͨ͠ϝσΟΞϑΝΠϧʹରͯ͠ͷݖݶ શϝσΟΞϑΝΠϧͷݖݶ͕ඞཁͳ߹ɺ࠶ϦΫΤετ͕ඞཁ ৽͍͠ݖݶΛར༻ͨ͠߹ɺͭ·Γ͜͏ ΞϓϦͷݖݶͷঢ়ଶͱͯ͠ຖճ֬ೝ͢ΔʹͳΔ
ਖ਼֬ʹڐՄ͞Ε͍ͯΔΘ͚Ͱͳ͍
ʮ3&"%@.&%*"@*."(&4ʯͱʮ3&"%@.&%*"@7*%&0ʯݖݶڋ൱͞ΕΔ ʮ3&"%@.&%*"@7*46"-@64&3@4&-&$5&%ʯݖݶ͕༩͞ΕɺϢʔβʔͷࣸਅͱ ಈըʹҰ࣌తʹΞΫηεͰ͖Δ ΞϓϦ͕ଞͷࣸਅಈըʹΞΫηε͢Δඞཁ͕͋Δ߹ɺʮ3&"%@.&%*"@*."(&4ʯ ͔ʮ3&"%@.&%*"@7*%&0ʯݖݶΛखಈͰ࠶ϦΫΤετ͢Δඞཁ͕͋Δ ৽͍͠ݖݶΛར༻ͨ͠߹ɺͭ·Γ͜͏ ΞϓϦͷݖݶͷঢ়ଶͱͯ͠ຖճ֬ೝ͢ΔʹͳΔ ਖ਼֬ʹڐՄ͞Ε͍ͯΔΘ͚Ͱͳ͍ ͋͘·ͰϢʔβʔ͕બͨ͠ϝσΟΞϑΝΠϧʹରͯ͠ͷݖݶ શϝσΟΞϑΝΠϧͷݖݶ͕ඞཁͳ߹ɺ࠶ϦΫΤετ͕ඞཁ
ϢʔβʔʹͱͬͯඞཁͳϝσΟΞͷΈެ։Ͱ͖Δ
ରԠ͠ͳ͔ͬͨ߹ ৽͍͠ݖݶΛར༻͠ͳ͍߹
৽͍͠ݖݶΛར༻͠ͳ͍߹ 3&"%@.&%*"@7*46"-@64&3@4&-&$5&% ʮࣸਅͱಈըΛબʯΛબͿ Ұ࣌తͳݖݶ͔͠༩͑ΒΕͣɺຖճڐՄΛଅ͢͜ͱʹͳΔ ʮ3&"%@.&%*"@*."(&4ʯͱʮ3&"%@.&%*"@7*%&0ʯݖݶҰ࣌తʹ༩͞Ε ΔɻͨͩΞϓϦ͕όοΫάϥϯυʹҠͬͨࡍͳͲʹݖݶڋ൱͞ΕΔɻ ΞϓϦ͕࠶ɺࣸਅಈըʹΞΫηε͢Δඞཁ͕͋Δ߹ɺʮ3&"%@.&%*"@*."(&4ʯ ͔ʮ3&"%@.&%*"@7*%&0ʯݖݶΛϦΫΤετ͢Δඞཁ͕͋Δ
৽͍͠ݖݶΛར༻͠ͳ͍߹ 3&"%@.&%*"@7*46"-@64&3@4&-&$5&% Ұ࣌తͳݖݶ͔͠༩͑ΒΕͣɺຖճڐՄΛଅ͢͜ͱʹͳΔ ʮ3&"%@.&%*"@*."(&4ʯͱʮ3&"%@.&%*"@7*%&0ʯݖݶҰ࣌తʹ༩͞Ε ΔɻͨͩΞϓϦ͕όοΫάϥϯυʹҠͬͨࡍͳͲʹݖݶڋ൱͞ΕΔɻ ΞϓϦ͕࠶ɺࣸਅಈըʹΞΫηε͢Δඞཁ͕͋Δ߹ɺʮ3&"%@.&%*"@*."(&4ʯ ͔ʮ3&"%@.&%*"@7*%&0ʯݖݶΛϦΫΤετ͢Δඞཁ͕͋Δ όοΫάϥϯυͰը૾ΛऔಘͰ͖ͳ͘ͳΔ Ұ࣌తͳڐՄͱ͍͏ݖݶͰͳ͍ͷͰ࠶ϦΫΤετ͕ඞཁ
গͳ͘ͱରԠͨ͠ํ͕ྑ͍
৽͍͠ݖݶΛͲ͏͏͔ 3&"%@.&%*"@7*46"-@64&3@4&-&$5&%
৽͍͠ݖݶͷѻ͍ํ RequestMultiplePermissionsͰʮ3&"%@.&%*"@*."(&4ʯͱ ʮ3&"%@.&%*"@7*46"-@64&3@4&-&$5&%ʯΛ·ͱΊͯϦΫΤετ͢Ε0,👌
ΞϓϦͷΞοϓσʔτ࣌ͷಈ࡞ "OESPJEUP"OESPJE
"OESPJEUP"OESPJE ҎԼͷέʔεͰߟ͑Δ 04ΞοϓσʔτΛҙࣝͨ͠ରԠෆཁ ΞϓϦ"OESPJEࡌͷσόΠεʹΠϯετʔϧࡁΈ Ҿ͖ଓ͖ϢʔβʔͷࣸਅͱಈըͷશΞΫηεݖΛ࣋ͭɻ طଘͷʮ3&"%@.&%*"@*."(&4ʯͱʮ3&"%@.&%*"@7*%&0ʯͷݖݶอ࣋͞ΕΔ ʮ3&"%@.&%*"@*."(&4ʯͱʮ3&"%@.&%*"@7*%&0ʯͷݖݶ༩ࡁΈ σόΠεΛ"OESPJEʹΞοϓσʔτ͢Δ
"OESPJEҎԼˠ"OESPJEͷ߹ಉ༷
܅ͨͪͲ͏ੜ͖Δ͔ʁ
બࢶೋͭ
બࢶೋͭ ࣸਅબπʔϧΛར༻͢Δ ৽͍͠ݖݶΛར༻͢Δ PS
બࢶೋͭ ৽͍͠ݖݶΛར༻͢Δ PS ࣸਅબπʔϧΛར༻͢Δ Φεεϝ ݅ w Ϣʔβʔ͕બΜͩը૾ͱಈըͷΈ͕ඞཁ
બࢶೋͭ ࣸਅબπʔϧΛར༻͢Δ ৽͍͠ݖݶΛར༻͢Δ PS ͲͪΒΛબΜͰରԠඞཁ ࣸਅબπʔϧΛͬͯͳ͚Ε
৽͍͠ݖݶͷ ϕετϓϥΫςΟε
৽͍͠ݖݶͷϕετϓϥΫςΟε ݖݶͷঢ়ଶΛӬଓతʹอ࣋͠ͳ͍ ࣸਅಈըͷϑϧΞΫηεΛఆ͠ͳ͍ 63*ΞΫηεΛҰ࣌తͳͷͱͯ͠ѻ͏
ݖݶͷঢ়ଶΛӬଓతʹอ࣋͠ͳ͍ ࠓճͷݖݶʹݶͬͨͰͳ͍͕ ΞϓϦ͕ٳࢭঢ়ଶʹͳͬͨΓɺϢʔβʔʹΑΔΞϓϦͷઃఆมߋʹΑͬͯɺ ݖݶมߋ͞ΕΔՄೳੑ͕͋Δ $POUFYU$PNQBUDIFDL4FMG1FSNJTTJPO Ͱ ݖݶͷঢ়ଶΛ֬ೝ͢Δ 4IBSFE1SFGFSFODFT%BUB4UPSFͳͲʹݖݶͷঢ়ଶΛอଘ͠ͳ͍
$POUFOU3FTPMWFSΛ༻ͯ͠ΫΤϦΛ࣮ߦ͢Δͱ͖ʹΞϓϦ͕.FEJB4UPSFσʔ λΛΩϟογϡ͍ͯ͠Δ߹ɺΩϟογϡ࠷৽Ͱͳ͍Մೳੑ͕͋Δ อଘ͞ΕͨΩϟογϡʹґଘ͢ΔͷͰͳ͘ɺ ৗʹ$POUFOU3FTPMWFSΛ༻ͯ͠.FEJB4UPSFΛΫΤϦ͢Δ ࣸਅಈըͷϑϧΞΫηεΛఆ͠ͳ͍
63*ΞΫηεΛҰ࣌తͳͷͱͯ͠ѻ͏ Ϣʔβʔ͕γεςϜμΠΞϩάͰʮࣸਅͱಈըͷબʯΛબΜͩ߹ɺ બͨࣸ͠ਅͱಈըͷΞΫηε࠷ऴతʹظݶΕʹͳΔ ΞϓϦɺݖݶͷঢ়ଶʹؔͳ͘ɺ 6SJʹΞΫηεͰ͖ͳ͍߹Λߟྀ࣮ͯ͢͠Δඞཁ͕͋Δ
ࣸਅબπʔϧΛར༻͢Δ ৽͍͠ݖݶΛར༻͢Δ PS
ͲͪΒͷํ๏ΛબͿ͔ Ϣʔεέʔε࣍ୈ
݈ಆΛفΔ
ͲΜͱ͍͜"OESPJE