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
240
写真と動画の部分的なアクセス権について
カーキ
August 11, 2023
Tweet
Share
More Decks by カーキ
See All by カーキ
Composeで敷き詰めるUIを どうやって作るか
takarkiz
0
74
TaskStackBuilderの紹介
takarkiz
0
28
Gemini API でアプリをつくりたい!
takarkiz
0
180
名古屋で勉強会を主催する3つの理由
takarkiz
0
190
GitHub Issue を利用したチケット管理
takarkiz
0
94
Gitの仕組みを理解しよう
takarkiz
0
96
Jetpack Compose でやってイイこと・ダメなこと
takarkiz
2
570
もっとJetpackComposeと仲良くなる
takarkiz
0
310
プログラミングを学ぶこと・教えること
takarkiz
0
77
Other Decks in Technology
See All in Technology
“パスワードレス認証への道" ユーザー認証の変遷とパスキーの関係
ritou
1
440
Devinで模索する AIファースト開発〜ゼロベースから始めるDevOpsの進化〜
potix2
PRO
6
2.8k
Lightdashの利活用状況 ー導入から2年経った現在地_20250409
hirokiigeta
2
270
【2025年度新卒技術研修】100分で学ぶ サイバーエージェントのデータベース 活用事例とMySQLパフォーマンス調査
cyberagentdevelopers
PRO
4
6.5k
IVRyにおけるNLP活用と NLP2025の関連論文紹介
keisukeosone
0
180
プロダクト開発におけるAI時代の開発生産性
shnjtk
2
200
Zabbixチョットデキルとは!?
kujiraitakahiro
0
180
GitHub MCP Serverを使って Pull Requestを作る、レビューする
hiyokose
2
710
20250413_湘南kaggler会_音声認識で使うのってメルス・・・なんだっけ?
sugupoko
1
390
ソフトウェア開発現代史: "LeanとDevOpsの科学"の「科学」とは何か? - DORA Report 10年の変遷を追って - #DevOpsDaysTokyo
takabow
0
200
システムとの会話から生まれる先手のDevOps
kakehashi
PRO
0
210
低レイヤを知りたいPHPerのためのCコンパイラ作成入門 / Building a C Compiler for PHPers Who Want to Dive into Low-Level Programming
tomzoh
0
210
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
13
1.4k
Visualization
eitanlees
146
16k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.4k
Statistics for Hackers
jakevdp
798
220k
Raft: Consensus for Rubyists
vanstee
137
6.9k
Code Reviewing Like a Champion
maltzj
522
39k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
9
740
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
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