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
980
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.2k
DroidKaigi 2016 Androidの省電力を考える
ynakanishi
4
12k
Other Decks in Programming
See All in Programming
CloudNative Days Winter 2025: 一週間で作る低レイヤコンテナランタイム
ternbusty
7
1.6k
JJUG CCC 2025 Fall: Virtual Thread Deep Dive
ternbusty
3
460
『実践MLOps』から学ぶ DevOps for ML
nsakki55
2
440
TVerのWeb内製化 - 開発スピードと品質を両立させるまでの道のり
techtver
PRO
3
1.1k
開発生産性が組織文化になるまでの軌跡
tonegawa07
0
180
AIエージェントでのJava開発がはかどるMCPをAIを使って開発してみた / java mcp for jjug
kishida
4
720
モビリティSaaSにおけるデータ利活用の発展
nealle
0
540
Flutterアプリ運用の現場で役立った監視Tips 5選
ostk0069
1
480
Querying Design System デザインシステムの意思決定を支える構造検索
ikumatadokoro
1
1.2k
競馬で学ぶ機械学習の基本と実践 / Machine Learning with Horse Racing
shoheimitani
14
13k
早すぎ?超先読み Go 1.26 Draft - Preview the contents of the Go 1.26 Draft Release Notes
tomtwinkle
0
340
ノーコードからの脱出 -地獄のデスロード- / Escape from Base44
keisuke69
1
750
Featured
See All Featured
Producing Creativity
orderedlist
PRO
348
40k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
330
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Speed Design
sergeychernyshev
32
1.2k
Building Adaptive Systems
keathley
44
2.8k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
2.9k
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