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
940
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
선언형 UI에서의 상태관리
l2hyunwoo
0
160
Асинхронность неизбежна: как мы проектировали сервис уведомлений
lamodatech
0
770
SymfonyCon Vienna 2025: Twig, still relevant in 2025?
fabpot
3
1.2k
fs2-io を試してたらバグを見つけて直した話
chencmd
0
230
【re:Growth 2024】 Aurora DSQL をちゃんと話します!
maroon1st
0
770
PHPUnitしか使ってこなかった 一般PHPerがPestに乗り換えた実録
mashirou1234
0
180
Fibonacci Function Gallery - Part 1
philipschwarz
PRO
0
220
Recoilを剥がしている話
kirik
5
6.7k
useSyncExternalStoreを使いまくる
ssssota
6
1k
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
3
290
[JAWS-UG横浜 #76] イケてるアップデートを宇宙いち早く紹介するよ!
maroon1st
0
460
PHPとAPI Platformで作る本格的なWeb APIアプリケーション(入門編) / phpcon 2024 Intro to API Platform
ttskch
0
220
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
181
21k
It's Worth the Effort
3n
183
28k
Facilitating Awesome Meetings
lara
50
6.1k
Side Projects
sachag
452
42k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
How GitHub (no longer) Works
holman
311
140k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
247
1.3M
Site-Speed That Sticks
csswizardry
2
190
Build your cross-platform service in a week with App Engine
jlugia
229
18k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
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