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
Otemachi Firebase #1 発表スライド
Search
Yoshiaki Nakanishi
July 13, 2016
Programming
3
950
Otemachi Firebase #1 発表スライド
App Indexing、Dynamic LinksとInvitesを15分でざっと紹介するための資料です。
Yoshiaki Nakanishi
July 13, 2016
Tweet
Share
More Decks by Yoshiaki Nakanishi
See All by Yoshiaki Nakanishi
すくすく!子育てエンジニアMeetup Vol.1資料
ynakanishi
1
2.1k
DroidKaigi 2016 Androidの省電力を考える
ynakanishi
5
11k
Other Decks in Programming
See All in Programming
ESLintプラグインを使用してCDKのセオリーを適用する
yamanashi_ren01
2
240
BEエンジニアがFEの業務をできるようになるまでにやったこと
yoshida_ryushin
0
200
DevFest - Serverless 101 with Google Cloud Functions
tunmise
0
140
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
870
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
940
サーバーゆる勉強会 DBMS の仕組み編
kj455
1
300
asdf-ecspresso作って 友達が増えた話 / Fujiwara Tech Conference 2025
koluku
0
1.4k
Androidアプリのモジュール分割における:x:commonを考える
okuzawats
1
280
Flatt Security XSS Challenge 解答・解説
flatt_security
0
740
週次リリースを実現するための グローバルアプリ開発
tera_ny
1
1.2k
functionalなアプローチで動的要素を排除する
ryopeko
1
210
ISUCON14感想戦で85万点まで頑張ってみた
ponyo877
1
590
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
Building Your Own Lightsaber
phodgson
104
6.2k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.2k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.2k
Measuring & Analyzing Core Web Vitals
bluesmoon
5
210
Practical Orchestrator
shlominoach
186
10k
A Philosophy of Restraint
colly
203
16k
GitHub's CSS Performance
jonrohan
1030
460k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Navigating Team Friction
lara
183
15k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Transcript
'JSFCBTF(SPXΑΓ "QQ*OEFYJOHɺ%ZOBNJD-JOLTͱ গ͠*OWJUFT ϒϥΠςΫϊגࣜձࣾ දऔకதྑ໌!DIVO@SZP
%JTDMBJNFS w ݱ࣌Ͱචऀ͕ௐͨใΛݩʹͨ͠ͷͰ͢ɻ ޡΓͳͲ͕͋Δ͔͠Ε·ͤΜͷͰ͝ҙͩ͘ ͍͞ʢ͝ࢦఠ͓͓ͪͯ͠Γ·͢ʣɻ w ςΩετɾը૾ͳͲ'JSFCBTFެࣜαΠτͷ$$ ͷͷɺஶ࡞ݖ๏্ͷҾ༻ͷ݅Λຬͨ͢ ൣғͰ༻͓ͯ͠Γ·͢ɻ IUUQTpSFCBTFHPPHMFDPNUFSNT
'JSFCBTF(SPXͱ w "DRVJSFBOEFOHBHFUIFSJHIUVTFSTBUUIFSJHIUUJNF 5BLFUIFHVFTTXPSLPVUPGHSPXUI
'JSFCBTF(SPXͱ w దͳ࣌ʹదʹϢʔβΛ֫ಘ͢ΔɺަྲྀΛਂΊΔ צʹཔ͔ͬͨΒͷग़
'JSFCBTF(SPXͱ w దͳ࣌ʹదʹϢʔβΛ֫ಘ͢ΔɺަྲྀΛਂΊΔ צʹཔ͔ͬͨΒͷग़ IUUQTpSFCBTFHPPHMFDPN
"QQ*OEFYJOH w (PPHMF*0Ͱൃද͞Εͨػೳͷ'JSFCBTF൛ w (PPHMFͷݕࡧ݁Ռ͔ΒɺΞϓϦΛىಈ͢Δ IUUQTpSFCBTFHPPHMFCMPHDPNJOUSPEVDJOHpSFCBTFBQQJOEFYJOHIUNM
"QQ*OEFYJOHͷར w "QQ*OEFYJOH4%,Λ༻͍Δͱʜʜ w ݕࡧॱҐ্͕͢Δ w (PPHMFݕࡧೖྗ࣌ͷΦʔτίϯϓϦʔτͰΞϓϦΛαδΣ ετͯ͘͠ΕΔ "OESPJEͷΈ
IUUQTpSFCBTFHPPHMFCMPHDPNJOUSPEVDJOHpSFCBTFBQQJOEFYJOHIUNM
"QQ*OEFYJOHͷར w ΞϓϦ͕Πϯετʔϧ͞Ε͍ͯͳ͍Ϣʔβʹɺ ݕࡧ݁ՌͷதͰΠϯετʔϧʹ༠ಋͯ͘͠ΕΔ IUUQTpSFCBTFHPPHMFCMPHDPNJOUSPEVDJOHpSFCBTFBQQJOEFYJOHIUNM
"QQ*OEFYJOHͷجຊ w ΞϓϦ͕)55163-Ͱ։͔ΕΔΑ͏ʹ͢Δ w 4%,ͷ"1*Λݺͼग़͢ w ΞϓϦىಈ࣌ʹొ"1*Λݺͼग़͢ J04 w
։͍ͨ63-ͷใΛݕࡧΠϯσοΫεʹొ͢Δ ʢ"OESPJEʣ
"QQ*OEFYJOHGPSJ04 w J04Ҏ߱ͷ6OJWFSTBM-JOLTػೳΛར༻͢Δ w ΞϓϦʹ6OJWFSTBM-JOLT͕దʹઃఆ͞Ε͍ͯΕɺࢦఆυϝ ΠϯͷIUUQIUUQTͷϦϯΫ͔ΒΞϓϦ͕ىಈ͞ΕΔ w IUUQTpSFCBTFHPPHMFDPNEPDTBQQJOEFYJOHJPTBQQ w
IUUQTEFWFMPQFSBQQMFDPNMJCSBSZJPTEPDVNFOUBUJPO(FOFSBM$PODFQUVBM "QQ4FBSDI6OJWFSTBM-JOLTIUNM \BQQMJOLT\BQQT<> EFUBJMT< \BQQ*%+"22-/2DPNBQQMFXXED QBUIT<XXEDOFXT lWJEFPTXXED >^ > ^ ^ w BQQMFBQQTJUFBTTPDJBUJPO ϑΝΠϧΛ8FCαΠτʹ ஔ͢Δ w ΞϓϦʹBTTPDJBUFEEPNBJOTͷ FOUJUMFNFOUΛઃఆ͢Δ
"QQ*OEFYJOHGPSJ04 $PDPB1PETͰ4%,ΛΠϯετʔϧ͢Δ "QQ%FMFHBUFʹొॲཧΛՃ͢Δ func application(application: UIApplication, didFinishLaunchingWithOptions
launchOptions: [NSObject: AnyObject]?) -> Bool { // …… FIRAppIndexing.sharedInstance().registerApp(12345678) // iTunes ConnectͰ֬ೝͰ͖ΔΞϓϦͷApple IDΛࢦఆ͢Δ } IUUQTpSFCBTFHPPHMFDPNEPDTBQQJOEFYJOHJPTBDUJWJUZ
"QQ*OEFYJOHGPS"OESPJE w 8FCαʔόͱΞϓϦͷϚχϑΣετΛରԠ͚ͯઃఆ͢Δ w 8FCαʔόͱΞϓϦಉ͡63-Ͱಉ͡ίϯςϯπΛࢀরͰ͖ΔΑ͏ʹ͢Δ w 8FCαʔό্ʹBTTFUMJOLTKTPOΛஔ͢Δ͔ɺ(PPHMFͷ4FBSDI$POTPMF ͰΞϓϦΛՃ͢Δ w
IUUQTpSFCBTFHPPHMFDPNEPDTBQQJOEFYJOHBOESPJEBQQ w IUUQTEFWFMPQFSBOESPJEDPNUSBJOJOHBQQMJOLTJOEFYIUNM <\ SFMBUJPO<EFMFHBUF@QFSNJTTJPODPNNPOIBOEMF@BMM@VSMT> UBSHFU\OBNFTQBDFBOESPJE@BQQ QBDLBHF@OBNFDPNBQQJOEFYJOHTBNQMFBQQ TIB@DFSU@pOHFSQSJOUT<IBTI@PG@BQQ@DFSUJpDBUF>^ ^>
"QQ*OEFYJOHGPS"OESPJE CVJMEHSBEMFʹґଘΛՃ͢Δ ։͍ͨ63-ͱλΠτϧɺઆ໌Λͻ͚ͯొ ͢Δʢ(PPHMFݕࡧʹڭ͑Δʣ
EFQFOEFODJFT\ DPNQJMFDPNHPPHMFBOESPJEHNTQMBZTFSWJDFTBQQJOEFYJOH ^
"QQ*OEFYJOHGPS"OESPJE QVCMJDDMBTT.BJO"DUJWJUZFYUFOET"DUJWJUZ\ ʜ !0WFSSJEF QSPUFDUFEWPJEPO$SFBUF #VOEMFTBWFE*OTUBODF4UBUF \ N$MJFOUOFX(PPHMF"QJ$MJFOU#VJMEFS UIJT
BEE"QJ "QQ*OEFY"1* CVJME N6SMIUUQFYBNQMFQFUTUPSFDPNEPHTTUBOEBSEQPPEMF N5JUMF4UBOEBSE1PPEMF N%FTDSJQUJPO5IF4UBOEBSE1PPEMFTUBOETBUMFBTUJODIFTBUUIFXJUIFST ^ QVCMJD"DUJPOHFU"DUJPO \ 5IJOHPCKFDUOFX5IJOH#VJMEFS TFU/BNF N5JUMF TFU%FTDSJQUJPO N%FTDSJQUJPO TFU6SM N6SM CVJME SFUVSOOFX"DUJPO#VJMEFS "DUJPO5:1&@7*&8 TFU0CKFDU PCKFDU TFU"DUJPO4UBUVT "DUJPO45"564@5:1&@$0.1-&5&% CVJME ^
"QQ*OEFYJOHGPS"OESPJE !0WFSSJEF QVCMJDWPJEPO4UBSU \ TVQFSPO4UBSU N$MJFOUDPOOFDU "QQ*OEFY"QQ*OEFY"QJTUBSU
N$MJFOU HFU"DUJPO ^ !0WFSSJEF QVCMJDWPJEPO4UPQ \ "QQ*OEFY"QQ*OEFY"QJFOE N$MJFOU HFU"DUJPO N$MJFOUEJTDPOOFDU TVQFSPO4UPQ ^ PO4UBSU ʙPO4UPQ ·Ͱɺ ࡏ࣌ؒΛܭଌͨ͠ ݕࡧΠϯσοΫεͷొ
%ZOBNJD-JOLT w ୯ҰͷϦϯΫͰϢʔβΛΞϓϦʹભҠͤ͞Δ w ΠϯετʔϧࡁΈͷ"OESPJE·ͨJ04ΞϓϦʹભҠ͞ ͤΔ w ະΠϯετʔϧ࣌ɺ(PPHMF1MBZ"QQ4UPSFʹϢʔ βΛ༠ಋ͢Δɻ·ͨɺΞϓϦͷॳճىಈ࣌ʹ͖͔͚ͬ ͱͳͬͨσΟʔϓϦϯΫ63-ͷใΛ༩͑Δ
%ZOBNJD-JOLTͷར σΟʔϓϦϯΫ͔ΒϢʔβʹΞϓϦΛΠϯετʔϧͤ͞ɺ తͷը໘Λ։͔ͤΔखॱ͕γϯϓϧʹͳΔ ˠɹϢʔβ֫ಘͷϋʔυϧ͕ܶతʹԼ͕Δ IUUQTXXXZPVUVCFDPNXBUDI W1NB6L57ZX%
%ZOBNJD-JOLTͷίϯιʔϧ ΞϓϦʹൃߦ͞ΕΔυϝΠϯ
μΠφϛοΫϦϯΫͷੜ
μΠφϛοΫϦϯΫͷੜ IUUQTpSFCBTFHPPHMFDPNEPDTEZOBNJDMJOLT ֤छͷใΛͬͨॖ63-Λ࡞Ͱ͖Δ
μΠφϛοΫϦϯΫΛ ϓϩάϥϜͰੜ͢Δ w ίϯιʔϧͰੜ͢Δ63-ɺύϥϝʔλʹ͍Ζ͍Ζͳ ใΛՃͨ͠ͷΛॖͨ͠ͷ w J04ΞϓϦ͚ͷ%ZOBNJD-JOLϑΥʔϚοτ w IUUQTEPNBJO MJOLZPVS@MJOLJCJCVOEMF@JEJVTVSM@TDIFNF<BE>
<JqGBMMCBDL@MJOL><BUB⒏MJBUF@UPLFO><DUDBNQBJHO@UFYU> w "OESPJEΞϓϦ͚ͷ%ZOBNJD-JOLϑΥʔϚοτ w IUUQTEPNBJO MJOLZPVS@EFFQ@MJOLBQOQBDLBHF@OBNF<BNWNJOJNVN@WFSTJPO> <BE><BMBOESPJE@MJOL><BqGBMMCBDL@MJOL> w J04͚ͱ"OESPJE͚ΛΈ߹ΘͤΔ͜ͱՄೳ
%ZOBNJD-JOLTࢀߟใ w %ZOBNJD-JOLTͷύϥϝʔλΛೖΕͯϦϯΫΛ ΈཱͯΔΣϒΞϓϦ w IUUQGEMMJOLTBQQTQPUDPN
μΠφϛοΫϦϯΫ͔Βͷ ใऔಘ J04 w ΞϓϦΧελϜ63-εΩʔϜɺ6OJWFSTBM-JOLTʹͳͲରԠͯ͠ ͓͘ w %ZOBNJD-JOLTͰఏڙ͞ΕΔυϝΠϯ6OJWFSTBM-JOLTΛ։͚ ΔΑ͏ʹ͓ͯ͘͠ w
ΞϓϦ͕ड͚औͬͨ63-͔ΒɺΞϓϦ͕ຊདྷظ͢Δ63- σΟʔ ϓϦϯΫ Λऔಘ͢Δ w σΟʔϓϦϯΫʹैͬͯɺదͳॲཧΛߦ͏ʢͨͱ͑ɺࢦఆͷϨ ετϥϯΛදࣔ͢Δʣ IUUQTpSFCBTFHPPHMFDPNEPDTEZOBNJDMJOLTJPT
μΠφϛοΫϦϯΫ͔Βͷ ใऔಘ "OESPJE w ΞϓϦॴͷσΟʔϓϦϯΫΛड͚औΕΔΑ͏ʹ *OUFOU'JMUFSΛઃఆ͓ͯ͘͠ w *OUFOU͔ΒσΟʔϓϦϯΫΛऔಘ͢Δ w σΟʔϓϦϯΫʹैͬͯɺదͳॲཧΛߦ͏ʢͨͱ͑
ɺࢦఆͷϨετϥϯΛදࣔ͢Δʣ IUUQTpSFCBTFHPPHMFDPNEPDTEZOBNJDMJOLTBOESPJE
%ZOBNJD-JOLTڥΛ Ͳ͏ผ͍ͯ͠Δͷ͔ ఆ൛ w 6TFS"HFOU͔Β04ͱόʔδϣϯΛऔಘ w ΞϓϦͷΠϯετʔϧঢ়گ w "OESPJEͷΈ Πϯετʔϧ͞Ε͍ͯΔΞϓϦͷWFSTJPO$PEF
ະΠϯετʔϧ ΠϯετʔϧࡁΈ 1$ ઃఆͨ͠63-ʹϦμΠϨΫτ "OESPJE ݹ͍ΞϓϦ /" ϑΥʔϧόοΫ63-ʹϦμΠϨΫτ "OESPJE /" ઃఆͨ͠63-ʹϦμΠϨΫτ͢Δ J04Ҏલ ΞϓϦͷىಈɾΠϯετʔϧͳͲʹ༠ಋ͢Δ+BWB4DSJQUΛؚΜͩΣϒϖ ʔδΛฦ͢ J04Ҏ߱ ϑΥʔϧόοΫ63-ʹϦμΠϨΫτ 6OJWFSTBM-JOLTͰΞϓϦ͕ىಈ
*OWJUFT w 'JSFCBTF%ZOBNJD-JOLTΛ༻͍ͨΞϓϦใͷϢʔβͷڞ༗ ট Λ؆୯ʹ͢Δػೳ w ΞϓϦʹট6*Λ؆୯ʹΈࠐΊΔ w ͨͩ͠ɺ&NBJMͱ4.4ʹΑΔটͷ؆୯ΈࠐΈͳͷͰɺͦ
ΕҎ֎Ͱͷটػೳ࣮ʹద͞ͳ͍ IUUQTpSFCBTFHPPHMFDPNEPDTJOWJUFT
*OWJUFTͷΈࠐΈํ w ؆୯ͳͷͰެࣜαΠτʹैͬͯਐΊΕ0, w "OESPJEIUUQTpSFCBTFHPPHMFDPNEPDTJOWJUFTBOESPJE w J04IUUQTpSFCBTFHPPHMFDPNEPDTJOWJUFTJPT