Slide 1

Slide 1 text

$PPLQBE*OD ©︎ J04%$+BQBO ౔ 5SBDL# ࢪࡦج൫ͱͯ͠ͷσΟʔϓϦϯΫ ʙͳΊΒ͔ʹΞϓϦ͕։͘ମݧͷͨΊʹʙ "UTVZB4BUP !O@BUNBSL

Slide 2

Slide 2 text

$PPLQBE*OD ©︎ ࠤ౻ ರ໵ (@n_atmark) ͞ͱ͏ɹɹ͋ͭ΍ ΫοΫύουגࣜձࣾ ങ෺αʔϏε։ൃ෦ ΤϯδχΞ ΫοΫύουΞϓϦͷങ͍෺ػೳ (iOS/Android)ͷ։ൃ

Slide 3

Slide 3 text

$PPLQBE*OD ©︎

Slide 4

Slide 4 text

$PPLQBE*OD ©︎ ࢪࡦͱ͸ ˔ ͨͱ͑͹ɺΞϓϦΛ࢖͏Ϣʔβʔ͕૿͑Δ͜ͱͰརӹʹͭͳ͕ΔΑ͏ͳ৔߹ ˓ ৽نΠϯετʔϧ਺ ˓ ΞϓϦͷىಈճ਺ ˓ ࿈ଓར༻೔਺ ˓ ʜFUD ʮ໨ඪୡ੒΍໰୊ղܾͷͨΊʹߨ͡Δ΂͖ܭըɾઓུʯͷ͜ͱ

Slide 5

Slide 5 text

$PPLQBE*OD ©︎ ࢪࡦͷࣄྫ঺հ

Slide 6

Slide 6 text

$PPLQBE*OD ©︎ ࢪࡦͷࣄྫ঺հ ˔ ൢଅΩϟϯϖʔϯ ˓ ໨త ˙ ച্֦େ ˙ ৽نϢʔβʔ֫ಘͳͲ ࢪࡦͷࣄྫ঺հ

Slide 7

Slide 7 text

$PPLQBE*OD ©︎ ࢪࡦͷࣄྫ঺հ ˔ 8FCΞϓϦ༠ಋ ˓ ໨త ˙ ٳ຾ϢʔβʔͷϦλʔήςΟϯά ˙ ܧଓར༻Λ໨తͱͨ͠ΞϓϦ΁ͷఆணͳͲ ࢪࡦͷࣄྫ঺հ

Slide 8

Slide 8 text

$PPLQBE*OD ©︎ ࢪࡦͷࣄྫ঺հ ˔ ༑ୡট଴Ωϟϯϖʔϯ ˓ ໨త ˙ ೝ஌֫ಘ ˙ ϦϑΝϥϧʹΑΔ৽ن Ϣʔβʔ֫ಘͳͲ ࢪࡦͷࣄྫ঺հ

Slide 9

Slide 9 text

$PPLQBE*OD ©︎ ʮΞϓϦ΁ϢʔβʔΛ࿈Εͯ͘ΔͨΊͷ࢓૊Έʯ ͱͯ͠ͷσΟʔϓϦϯΫ

Slide 10

Slide 10 text

$PPLQBE*OD ©︎ ΞδΣϯμ ˔ ֓೦ͱͯ͠ͷσΟʔϓϦϯΫ ˔ Ϣʔβʔঢ়ଶ΍ෳ਺ܦ࿏͔Βͷྲྀೖʹରͯ͠׆༻Ͱ͖Δ࢓૊Έ ˔ Ϣʔβʔʹจ຺Λཧղͨ͠ঢ়ଶͷ··ΞϓϦʹ͖ͯ΋Β͏ͨΊʹ׆༻Ͱ͖ Δ࢓૊Έ ˔ ࢪࡦ΁ͷద༻ ˔ ·ͱΊ

Slide 11

Slide 11 text

$PPLQBE*OD ©︎ ֓೦ͱͯ͠ͷσΟʔϓϦϯΫ

Slide 12

Slide 12 text

$PPLQBE*OD ©︎ σΟʔϓϦϯΫ %FFQ-JOLJOH ͱ͸ ˔ σΟʔϓϦϯΫͱ͍͏lػೳz͸ͳ͍ ˓ ֓೦͓Αͼ໊শͱͯ͠lσΟʔϓϦϯΫzͱ͍͏ϫʔυ͕༻͍ΒΕ͍ͯΔ ֓೦ͱͯ͠ͷσΟʔϓϦϯΫ σΟʔϓϦϯΫʹରԠͨ͠URIͦͷ΋ͷΛࢦ͢ݴ༿ͱͯ͠΋ ར༻͞ΕΔ ֓೦ ໊শ ΞϓϦͷಛఆͷίϯςϯπΛ URI Ͱදݱͯ͠ɺର৅ͷURIΛ ϦΫΤετͨ͠ࡍʹΞϓϦͷಛఆͷίϯςϯπʹΞΫηε͢ ΔͨΊͷ΋ͷ ˔ ྫ ΫοΫύουͷϨγϐৄࡉΛ։͘σΟʔϓϦϯΫ ˓ IUUQTDPPLQBEDPNSFDJQFJE ˓ DPPLQBEEPNBJOSFDJQFJE ˞આ໌༻ʹ࣮ࡍͱ͸ผͷ΋ͷΛࡌ͍ͤͯ·͢

Slide 13

Slide 13 text

$PPLQBE*OD ©︎ σΟʔϓϦϯΫ %FFQ-JOLJOH ͱ͸ ˔ ΞϓϦͷಛఆͷը໘Λ63*Ͱදݱͯ͠ɺ౿Ήͱͦ͜ʹભҠͤ͞Δ͜ͱɻ·ͨ ͸ͦͷ63*ͦͷ΋ͷɻ ˔ ϢχόʔαϧϦϯΫͰ༻͍ΒΕΔ63-΍ΧελϜεΩʔϜͷ63*ͳͲࣗ਎ͷ͜ ͱΛσΟʔϓϦϯΫͱݺͿ͜ͱ΋͋Δ ˔ ʮϢχόʔαϧϦϯΫʯ΍ʮΧελϜ63-εΩʔϜʯ͸σΟʔϓϦϯΫΛ࣮ ݱ͢ΔͨΊͷํ๏ͷҰछ ֓೦ͱͯ͠ͷσΟʔϓϦϯΫ ˔ ิ଍ݫີʹ͸8PSME8JEF8FCʹ͓͚ΔσΟʔϓϦϯΫ %FFQ-JOLJOH ͱϞόΠϧΞϓϦͷ จ຺ʹ͓͚ΔσΟʔϓϦϯΫ .PCJMF%FFQ-JOLJOH ͸۠ผ͞ΕΔ ˓ ؆୯ͷͨΊ.PCJMF%FFQ-JOLJOHͷ͜ͱΛσΟʔϓϦϯΫͱݺͿ͜ͱʹ͢Δ

Slide 14

Slide 14 text

$PPLQBE*OD ©︎ σΟʔϓϦϯΫʹରԠͨ͠URIͦͷ΋ͷΛࢦ͢ݴ༿ͱͯ͠΋ར༻͞ΕΔ ֓೦ ໊শ ΞϓϦͷಛఆͷίϯςϯπΛ URI Ͱදݱͯ͠ɺର৅ͷURIΛϦΫΤετͨ͠ࡍʹ ΞϓϦͷಛఆͷίϯςϯπʹΞΫηε͢ΔͨΊͷ΋ͷ σΟʔϓϦϯΫ (Deep Linking) http(s): Ͱ࢝·ΔϦϯΫΛϋϯυϦϯά͢Δ http(s): Ҏ֎ͷϦϯΫΛϋϯυϦϯά͢Δ ػೳ Universal Links Android App Links ػೳ ػೳ Custom URL Scheme

Slide 15

Slide 15 text

$PPLQBE*OD ©︎ 6OJWFSTBM-JOLTͱ͸ ֓೦ͱͯ͠ͷσΟʔϓϦϯΫ ػೳ ಛఆͷ΢ΣϒαΠτʹؔ࿈෇͚ΒΕͨΞϓϦ͕Πϯε τʔϧ͞Ε͍ͯΔ৔߹ɺ΢ΣϒαΠτURL͔Β௚઀
 ΞϓϦ಺ͷରԠίϯςϯπΛ։͚ΔΑ͏ʹͳΔ΋ͷ

Slide 16

Slide 16 text

$PPLQBE*OD ©︎ 6OJWFSTBM-JOLTͱ͸ ֓೦ͱͯ͠ͷσΟʔϓϦϯΫ ػೳ ಛఆͷ΢ΣϒαΠτʹؔ࿈෇͚ΒΕͨΞϓϦ͕Πϯε τʔϧ͞Ε͍ͯΔ৔߹ɺ΢ΣϒαΠτURL͔Β௚઀
 ΞϓϦ಺ͷରԠίϯςϯπΛ։͚ΔΑ͏ʹͳΔ΋ͷ ˔ "TTPDJBUFE%PNBJOTͰઃఆ͞ΕͨυϝΠϯͷBQQMFBQQ TJUFBTTPDJBUJPOϑΝΠϧΛΞϓϦͷॳճىಈ࣌ʹμ΢ϯϩ ʔυͯ͠൑ผͰ͖ΔΑ͏ʹ͍ͯ͠Δ ˔ J04ͷΈͰར༻Մೳͳػೳ 
 ˞"OESPJEͰ͸ྨࣅٕज़ͱͯ͠"OESPJE"QQ-JOLT͕ར༻Մೳ

Slide 17

Slide 17 text

$PPLQBE*OD ©︎ 6OJWFSTBM-JOLTͱ͸ "TTPDJBUFE%PNBJOT ֓೦ͱͯ͠ͷσΟʔϓϦϯΫ ˓ υϝΠϯͷॴ༗ݖΛূ໌͢ΔͨΊʹ"TTPDJBUFE%PNBJOTͱͯ͠ 
 TFSWJDFGVMMRVBMJ fi FEEPNBJOͷܗࣜͰΞϓϦͱΫϨσϯγϟϧΛ ڞ༗͢ΔυϝΠϯΛ௥Ճ͢Δ ొஃ࣌͸εϥΠυεΩοϓ͠·͢

Slide 18

Slide 18 text

$PPLQBE*OD ©︎ 6OJWFSTBM-JOLTͱ͸ BQQMFBQQTJUFBTTPDJBUJPO ֓೦ͱͯ͠ͷσΟʔϓϦϯΫ ˓ ΞϓϦͷॴ༗ݖΛূ໌͢ΔͨΊʹυϝΠϯͰαϙʔτ͢ΔΞϓϦࣝผࢠΛ ྻڍ͠ɺIUUQTEPNBJOOBNFXFMMLOPXOBQQMFBQQTJUF BTTPDJBUJPOͷύεͰϗετ͢Δ ొஃ࣌͸εϥΠυεΩοϓ͠·͢

Slide 19

Slide 19 text

$PPLQBE*OD ©︎ ΧελϜ63-εΩʔϜ $VTUPN63-4DIFNF ͱ͸ ֓೦ͱͯ͠ͷσΟʔϓϦϯΫ ػೳ ΞϓϦ͝ͱʹఆٛ͞Ε͍ͯΔ https:, http: Ҏ֎ͷಠࣗͷ εΩʔϜΛࣝผͯ͠ɺରԠ͢ΔΞϓϦΛ։͘͜ͱͷͰ ͖Δػೳ (iOS/AndroidͰར༻Մೳ) ˞ิ଍ຊདྷΧελϜ63-εΩʔϜ͕ࢦ͢΋ͷ͸DPPLQBEEPNBJO ͷ෦෼͕ͩɺ׳༻తʹDPPLQBEEPNBJOSFDJQFJEͷΑ͏ͳσΟʔ ϓϦϯΫʹରԠͨ͠63*ࣗ਎Λࢦ͢ݴ༿ͱͯ͠࢖ΘΕΔ৔߹΋͋Δ

Slide 20

Slide 20 text

$PPLQBE*OD ©︎ ΧελϜ63-εΩʔϜ $VTUPN63-4DIFNF ͱ͸ ֓೦ͱͯ͠ͷσΟʔϓϦϯΫ ػೳ ΞϓϦ͝ͱʹఆٛ͞Ε͍ͯΔ https:, http: Ҏ֎ͷಠࣗͷ εΩʔϜΛࣝผͯ͠ɺରԠ͢ΔΞϓϦΛ։͘͜ͱͷͰ ͖Δػೳ (iOS/AndroidͰར༻Մೳ) ˔ ΞϓϦଆͰ*EFOUJ fi FS͓Αͼ63-4DIFNFTΛఆٛ͢Δ͜ͱ Ͱར༻Ͱ͖Δ ొஃ࣌͸εϥΠυεΩοϓ͠·͢

Slide 21

Slide 21 text

$PPLQBE*OD ©︎ Ҿ༻: Firebase Dynamic LinksͰطଘͷϢʔβʔ͚ͩͰͳ͘ɺજࡏతϢʔβʔʹ΋ମݧΛ ఏڙ͍ͨ͠, 2020/09/21 iOSDC 2020 Japan, த઒ ହ෉ ֓೦ͱͯ͠ͷσΟʔϓϦϯΫ

Slide 22

Slide 22 text

$PPLQBE*OD ©︎ σΟʔϓϦϯΫʹରԠͨ͠URIͦͷ΋ͷΛࢦ͢ݴ༿ͱͯ͠΋ར༻͞ΕΔ ֓೦ ໊শ ΞϓϦͷಛఆͷίϯςϯπΛ URI Ͱදݱͯ͠ɺର৅ͷURIΛϦΫΤετͨ͠ࡍʹ ΞϓϦͷಛఆͷίϯςϯπʹΞΫηε͢ΔͨΊͷ΋ͷ σΟʔϓϦϯΫ (Deep Linking) http(s): Ͱ࢝·ΔϦϯΫΛϋϯυϦϯά͢Δ http(s): Ҏ֎ͷϦϯΫΛϋϯυϦϯά͢Δ ػೳ Universal Links Android App Links ػೳ ػೳ Custom URL Scheme

Slide 23

Slide 23 text

$PPLQBE*OD ©︎ Πϯετʔϧ͞Εͯͳ͍ΞϓϦΛର৅ͱͨ͠ σΟʔϓϦϯΫ

Slide 24

Slide 24 text

$PPLQBE*OD ©︎ σΟϑΝʔυσΟʔϓϦϯΫ %FGFSSFE%FFQ-JOLJOH Πϯετʔϧ͞Εͯͳ͍ΞϓϦΛର৅ͱͨ͠σΟʔϓϦϯΫ ˔ Ϣʔβʔ͕ΞϓϦΛΠϯετʔϧ͍ͯ͠ͳ͍৔߹ɺΞϓϦ ετΞΛ։͘ ˓ ΞϓϦ͕Πϯετʔϧ͞ΕͨޙॳΊͯىಈ͞Εͨ࣌ ʹɺσΟʔϓϦϯΫʹΑΔભҠॲཧ͕࣮ߦ͞ΕΔ ֓೦ σΟʔϓϦϯΫͷ࣮ߦΛΞϓϦΠϯετʔϧ׬ྃ ޙͷॳճىಈ࣌·ͰʮDeferred(Ԇظ)ʯͤ͞ΔͨΊ ͷ΋ͷ

Slide 25

Slide 25 text

$PPLQBE*OD ©︎ σΟϑΝʔυσΟʔϓϦϯΫ %FGFSSFE%FFQ-JOLJOH Πϯετʔϧ͞Εͯͳ͍ΞϓϦΛର৅ͱͨ͠σΟʔϓϦϯΫ ˔ σΟϑΝʔυσΟʔϓϦϯΫΛαϙʔτ͢ΔͨΊͷํ๏͸ ϓϥοτϑΥʔϜʹΑͬͯҟͳΔ ެࣜαϙʔτ͸༻ҙ͞Ε͍ͯͳ͍ɻ
 ΫϦοϓϘʔυʹσΟʔϓϦϯΫͷύϥϝʔλʔΛอ࣋ͯ͠ɺ ΞϓϦىಈ࣌ʹΫϦοϓϘʔυ͔ΒσΟʔϓϦϯΫΛಡΈग़͠ ͯॲཧͤ͞ΔͳͲͷํ๏Ͱ࣮ݱͰ͖Δ ػೳ ެࣜػೳͱͯ͠ɺΠϯςϯτΛ࢖༻ͯ͠Google PlayετΞΛհ ͯ͠σΟʔϓϦϯΫΛ౉͢Φϓγϣϯ͕ఏڙ͞Ε͍ͯΔ ࢓૊Έ

Slide 26

Slide 26 text

$PPLQBE*OD ©︎ σΟϑΝʔυσΟʔϓϦϯΫ (Deferred Deep Linking) ެࣜػೳͰ࣮ݱՄೳ σΟʔϓϦϯΫʹରԠͨ͠URIͦͷ΋ͷΛࢦ͢ݴ༿ͱͯ͠΋ར༻͞ΕΔ ֓೦ ໊শ ΞϓϦͷಛఆͷίϯςϯπΛ URI Ͱදݱͯ͠ɺର৅ͷURIΛϦΫΤετͨ͠ ࡍʹΞϓϦͷಛఆͷίϯςϯπʹΞΫηε͢ΔͨΊͷ΋ͷ σΟʔϓϦϯΫ (Deep Linking) http(s): Ͱ࢝·ΔϦϯΫΛϋϯυϦϯά͢Δ http(s): Ҏ֎ͷϦϯΫΛϋϯυϦϯά͢Δ ػೳ Universal Links Android App Links ػೳ ػೳ Custom URL Scheme ΞϓϦະΠϯετʔϧͷ୺຤Λର৅ʹɺΞϓϦετΞͷμ΢ϯϩʔυϖʔδΛ։͖ɺΞϓϦ͕ Πϯετʔϧ͞ΕͨޙॳΊͯىಈ͞Εͨ࣌ʹɺݩʑͷURIͰࢦఆ͞ΕͨίϯςϯπʹΞΫηεͤ͞Δ͜ͱ ֓೦ ػೳ ࢓૊Έ ΫϦοϓϘʔυͳͲΛ׆༻࣮ͯ͠ݱՄೳ σΟϑΝʔυσΟʔϓϦϯΫ΋ؚΊͯσΟʔϓϦϯΫͱݺͿ৔߹΋͋Δ

Slide 27

Slide 27 text

$PPLQBE*OD ©︎ σΟʔϓϦϯΫΛखܰʹར༻Ͱ͖ΔΑ͏ʹ ͢ΔͨΊͷαʔϏε঺հ

Slide 28

Slide 28 text

$PPLQBE*OD ©︎ σΟʔϓϦϯΫΛखܰʹར༻Ͱ͖ΔΑ͏ʹ͢ΔͨΊͷαʔϏε σΟʔϓϦϯΫΛखܰʹར༻Ͱ͖ΔΑ͏ʹ͢ΔͨΊͷαʔϏε঺հ ˔ 'JSFCBTF%ZOBNJD-JOLT ˔ "EKVTU ʹ͍ͭͯ঺հ͠·͢

Slide 29

Slide 29 text

$PPLQBE*OD ©︎ 'JSFCBTF%ZOBNJD-JOLT σΟʔϓϦϯΫΛखܰʹར༻Ͱ͖ΔΑ͏ʹ͢ΔͨΊͷαʔϏε঺հ https://firebase.google.com/products/dynamic-links

Slide 30

Slide 30 text

$PPLQBE*OD ©︎ 'JSFCBTF%ZOBNJD-JOLT σΟʔϓϦϯΫΛखܰʹར༻Ͱ͖ΔΑ͏ʹ͢ΔͨΊͷαʔϏε঺հ ˔ 'JSFCBTFͷػೳͷ͏ͪͷҰͭ ˓ ΞϓϦͷΠϯετʔϧঢ়ଶʹ໰Θͣෳ਺ϓϥοτϑΥʔϜͰར༻Մೳͳ 
 ϦϯΫΛੜ੒ͯ͘͠ΕΔ ˔ ΧελϜͷ%ZOBNJD-JOLTυϝΠϯΛऔಘͰ͖Δ ˓ ྫ EPNBJOQBHFMJOL ˔ 'JSFCBTFίϯιʔϧ͔Βͷ੩తͳ୹ॖ63-ੜ੒΍ύϥϝʔλ෇༩ʹΑΔ 
 ಈత63-ੜ੒͕Մೳ 'JSFCBTF%ZOBNJD-JOLTͱ͸ ˞'JSFCBTF%ZOBNJD-JOLTͰ࡞੒͞ΕͨϦϯΫͷ͜ͱΛμΠφϛοΫϦϯΫ %ZOBNJD-JOL ͱݺͿ

Slide 31

Slide 31 text

$PPLQBE*OD ©︎ "EKVTU σΟʔϓϦϯΫΛखܰʹར༻Ͱ͖ΔΑ͏ʹ͢ΔͨΊͷαʔϏε঺հ https://www.adjust.com/

Slide 32

Slide 32 text

$PPLQBE*OD ©︎ "EKVTU σΟʔϓϦϯΫΛखܰʹར༻Ͱ͖ΔΑ͏ʹ͢ΔͨΊͷαʔϏε঺հ ˔ "EKVTUࣾʹΑΔϞόΠϧܭଌͷͨΊͷαʔϏε ˔ 6OJWFSTBM-JOLJOHͷઃఆ͔Β"QQ*%1SF fi Yͱ63-4DIFNFΛઃఆ͢Δ͜ͱ ͰΞϓϦέʔγϣϯ͝ͱʹ6OJWFSTBM-JOLT༻ͷυϝΠϯ͕ൃߦ͞ΕΔ "EKVTUͱ͸

Slide 33

Slide 33 text

$PPLQBE*OD ©︎ σΟʔϓϦϯΫΛखܰʹѻ͑ΔαʔϏε σΟʔϓϦϯΫΛखܰʹར༻Ͱ͖ΔΑ͏ʹ͢ΔͨΊͷαʔϏε঺հ ˔ ΞϓϦ͕ະΠϯετʔϧͷϢʔβʔ ˓ σΟϑΝʔυσΟʔϓϦϯΫΛ༻͍ͯɺΞϓϦΠϯετʔϧΛଅͨ͠ޙɺ ॳճىಈ࣌ʹ໨తͷίϯςϯπ΁࿈Εͯ͘Δ͜ͱ͕Ͱ͖Δ ˔ ΞϓϦΠϯετʔϧࡁΈͷϢʔβʔ ˓ 6OJWFSTBM-JOLTΛ༻͍ͯɺΞϓϦͷ໨తͷίϯςϯπʹγʔϜϨεʹ࿈ Εͯ͘Δ͜ͱ͕Ͱ͖Δ ˔ ର৅ϓϥοτϑΥʔϜ֎ͷϢʔβʔ ˓ ϑΥʔϧόοΫઌͷ63-ʹϦμΠϨΫτͰ͖Δ 'JSFCBTF%ZOBNJD-JOLT΍"EKVTU

Slide 34

Slide 34 text

$PPLQBE*OD ©︎ Πϯετʔϧঢ়گʹԠͨ͡ભҠ ˔ 'JSFCBTF%ZOBNJD-JOLTͷྫ ˓ 'JSFCBTF%ZOBNJD-JOLTͰൃߦ͞ΕͨɺμΠ φϛοΫϦϯΫ͸ʮϦϯΫΛϓϨϏϡʔ σό οά ʯ͔ΒڍಈΛ֬ೝͰ͖Δ ˙ ˞μΠφϛοΫϦϯΫͷ຤ඌʹEΦϓ γϣϯΛ෇͚ͯ΋֬ೝͰ͖Δ ˓ ϓϥοτϑΥʔϜ΍ΞϓϦͷΠϯετʔϧঢ়گ ʹ ˙ 8FCͰ63-Λ։͘ ˙ "QQ4UPSFΛ։͘ ˙ σΟʔϓϦϯΫͰΞϓϦΛ։͘ σΟʔϓϦϯΫΛखܰʹར༻Ͱ͖ΔΑ͏ʹ͢ΔͨΊͷαʔϏε঺հ ొஃ࣌͸εϥΠυεΩοϓ͠·͢

Slide 35

Slide 35 text

$PPLQBE*OD ©︎ σΟϑΝʔυσΟʔϓϦϯΫ (Deferred Deep Linking) http(s): Ͱ࢝·ΔϦϯΫΛϋϯυϦϯά͢Δ http(s): Ҏ֎ͷϦϯΫΛϋϯυϦϯά͢Δ Universal Links Custom URL Scheme σΟʔϓϦϯΫ (Deep Linking) σΟʔϓϦϯΫ Λखܰʹར༻Ͱ͖ΔαʔϏε Firebase Dynamic Links ੡඼໊ Adjust ੡඼໊ ΞϓϦΠϯετʔϧ ࣌ʹ࣮ߦ ΞϓϦະΠϯετʔϧ࣌ ʹ࣮ߦ

Slide 36

Slide 36 text

$PPLQBE*OD ©︎ ෇࿥ৄࡉʹॻ͍ͨઆ໌ਤ

Slide 37

Slide 37 text

$PPLQBE*OD ©︎ Ϣʔβʔঢ়ଶ΍ෳ਺ܦ࿏͔Βͷྲྀೖʹରͯ͠ ׆༻Ͱ͖Δ࢓૊Έ

Slide 38

Slide 38 text

$PPLQBE*OD ©︎ ॳճઃఆঢ়گʹԠͨ͡ભҠ ˔ ྫ͑͹ɺॳճΠϯετʔϧ࣌ʹΞϓϦͷνϡʔτϦΞϧΛ࣮ߦ͍ͤͨ͞έʔε ˓ σΟϑΝʔυσΟʔϓϦϯΫͷ࣮ߦΛΞϓϦଆͰԆظͤ͞ɺ໨తը໘΁ͷ ભҠ࣮ߦΛνϡʔτϦΞϧऴྃޙʹ͢Δ Ϣʔβʔঢ়ଶ΍ෳ਺ܦ࿏͔Βͷྲྀೖʹରͯ͠׆༻Ͱ͖Δ࢓૊Έ Launch Screen ໨తը໘

Slide 39

Slide 39 text

$PPLQBE*OD ©︎ ॳճઃఆঢ়گʹԠͨ͡ભҠ Ϣʔβʔঢ়ଶ΍ෳ਺ܦ࿏͔Βͷྲྀೖʹରͯ͠׆༻Ͱ͖Δ࢓૊Έ private let deferredDeepLinkCheckpoint = PublishSubject() private let deferredDeepLinkSubject: ReplaySubject func didFinishTutorial() { deferredDeepLinkCheckpoint.onNext(()) } private func setUpDeferredDeepLinkCheckpoint() { Observable .combineLatest( deferredDeepLinkSubject, deferredDeepLinkCheckpoint ) { deepLink, _ in deepLink } .take(1) .subscribe(onNext: { [environment] deepLink in // σΟϑΝʔυσΟʔϓϦϯΫͷભҠॲཧ }, onCompleted: { [weak self] in guard let strongSelf = self else { return } strongSelf.deferredDeepLinkSubject.onCompleted() strongSelf.deferredDeepLinkCheckpoint.onCompleted() }) .disposed(by: disposeBag) }

Slide 40

Slide 40 text

$PPLQBE*OD ©︎ ॳճઃఆঢ়گʹԠͨ͡ભҠ Ϣʔβʔঢ়ଶ΍ෳ਺ܦ࿏͔Βͷྲྀೖʹରͯ͠׆༻Ͱ͖Δ࢓૊Έ private let deferredDeepLinkCheckpoint = PublishSubject() private let deferredDeepLinkSubject: ReplaySubject func didFinishTutorial() { deferredDeepLinkCheckpoint.onNext(()) } private func setUpDeferredDeepLinkCheckpoint() { Observable .combineLatest( deferredDeepLinkSubject, deferredDeepLinkCheckpoint ) { deepLink, _ in deepLink } .take(1) .subscribe(onNext: { [environment] deepLink in // σΟϑΝʔυσΟʔϓϦϯΫͷભҠॲཧ }, onCompleted: { [weak self] in guard let strongSelf = self else { return } strongSelf.deferredDeepLinkSubject.onCompleted() strongSelf.deferredDeepLinkCheckpoint.onCompleted() }) .disposed(by: disposeBag) }

Slide 41

Slide 41 text

$PPLQBE*OD ©︎ ॳճઃఆঢ়گʹԠͨ͡ભҠ Ϣʔβʔঢ়ଶ΍ෳ਺ܦ࿏͔Βͷྲྀೖʹରͯ͠׆༻Ͱ͖Δ࢓૊Έ private let deferredDeepLinkCheckpoint = PublishSubject() private let deferredDeepLinkSubject: ReplaySubject func didFinishTutorial() { deferredDeepLinkCheckpoint.onNext(()) } private func setUpDeferredDeepLinkCheckpoint() { Observable .combineLatest( deferredDeepLinkSubject, deferredDeepLinkCheckpoint ) { deepLink, _ in deepLink } .take(1) .subscribe(onNext: { [environment] deepLink in // σΟϑΝʔυσΟʔϓϦϯΫͷભҠॲཧ }, onCompleted: { [weak self] in guard let strongSelf = self else { return } strongSelf.deferredDeepLinkSubject.onCompleted() strongSelf.deferredDeepLinkCheckpoint.onCompleted() }) .disposed(by: disposeBag) }

Slide 42

Slide 42 text

$PPLQBE*OD ©︎ ॳճઃఆঢ়گʹԠͨ͡ભҠ Ϣʔβʔঢ়ଶ΍ෳ਺ܦ࿏͔Βͷྲྀೖʹରͯ͠׆༻Ͱ͖Δ࢓૊Έ private let deferredDeepLinkCheckpoint = PublishSubject() private let deferredDeepLinkSubject: ReplaySubject func didFinishTutorial() { deferredDeepLinkCheckpoint.onNext(()) } private func setUpDeferredDeepLinkCheckpoint() { Observable .combineLatest( deferredDeepLinkSubject, deferredDeepLinkCheckpoint ) { deepLink, _ in deepLink } .take(1) .subscribe(onNext: { [environment] deepLink in // σΟϑΝʔυσΟʔϓϦϯΫͷભҠॲཧ }, onCompleted: { [weak self] in guard let strongSelf = self else { return } strongSelf.deferredDeepLinkSubject.onCompleted() strongSelf.deferredDeepLinkCheckpoint.onCompleted() }) .disposed(by: disposeBag) }

Slide 43

Slide 43 text

$PPLQBE*OD ©︎ ॳճઃఆঢ়گʹԠͨ͡ભҠ Ϣʔβʔঢ়ଶ΍ෳ਺ܦ࿏͔Βͷྲྀೖʹରͯ͠׆༻Ͱ͖Δ࢓૊Έ private let deferredDeepLinkCheckpoint = PublishSubject() private let deferredDeepLinkSubject: ReplaySubject func didFinishTutorial() { deferredDeepLinkCheckpoint.onNext(()) } private func setUpDeferredDeepLinkCheckpoint() { Observable .combineLatest( deferredDeepLinkSubject, deferredDeepLinkCheckpoint ) { deepLink, _ in deepLink } .take(1) .subscribe(onNext: { [environment] deepLink in // σΟϑΝʔυσΟʔϓϦϯΫͷભҠॲཧ }, onCompleted: { [weak self] in guard let strongSelf = self else { return } strongSelf.deferredDeepLinkSubject.onCompleted() strongSelf.deferredDeepLinkCheckpoint.onCompleted() }) .disposed(by: disposeBag) }

Slide 44

Slide 44 text

$PPLQBE*OD ©︎ ͞·͟·ͳྲྀೖܦ࿏͔ΒͷΞϓϦىಈ

Slide 45

Slide 45 text

$PPLQBE*OD ©︎ ଟ༷ͳܦ࿏͔Βͷྲྀೖ ˔ ΞϓϦ಺ͷಛఆͷίϯςϯπΛ։ͨ͘ΊʹɺσΟʔϓϦϯΫΛ༻͍ͯΞϓϦΛ ։ͨ͘Ίͷྲྀೖܦ࿏͕ෳ਺ଘࡏ͢Δ ˓ 6OJWFSTBM-JOLT ˓ %FGFSSFE%FFQ-JOLJOH ˓ $VTUPN63-4DIFNF ˓ 1VTI௨஌ ˓ ʜFUD ͞·͟·ͳྲྀೖܦ࿏͔ΒͷΞϓϦىಈ

Slide 46

Slide 46 text

$PPLQBE*OD ©︎ ଟ༷ͳܦ࿏͔Βͷྲྀೖ ˔ ΫοΫύουͰΞϓϦͰ͸HJHJOFU$SPTTSPBEΛར༻ ͞·͟·ͳྲྀೖܦ࿏͔ΒͷΞϓϦىಈ ৄ͘͠͸: https://techlife.cookpad.com/entry/2018/06/01/113000

Slide 47

Slide 47 text

$PPLQBE*OD ©︎ ଟ༷ͳܦ࿏͔Βͷྲྀೖ ˔ ΫοΫύουͰΞϓϦͰ͸HJHJOFU$SPTTSPBEΛར༻ ͞·͟·ͳྲྀೖܦ࿏͔ΒͷΞϓϦىಈ ˓ $SPTTSPBEͰෳ਺-JOL4PVSDFରԠ͕ ͞ΕͨͨΊɺҰͭͷϧʔτఆٛͰଟ༷ͳܦ ࿏͔ΒͷྲྀೖʹରԠͰ͖Δ ˓ ΫοΫύουΞϓϦͰ΋ $VTUPN63-4DIFNFछͱ6OJWFSTBM -JOLT 'JSFCBTF%ZOBNJD-JOLT༻ ʹछར ༻͍ͯͯ͠ศར

Slide 48

Slide 48 text

$PPLQBE*OD ©︎ Ϣʔβʔʹจ຺Λཧղͨ͠ঢ়ଶͷ··ΞϓϦʹ དྷͯ΋Β͏ͨΊʹ׆༻Ͱ͖Δ࢓૊Έ

Slide 49

Slide 49 text

$PPLQBE*OD ©︎ ʮϢʔβʔʹจ຺Λཧղͯ͠΋Β͏ʯͷഎܠ Ϣʔβʔʹจ຺Λཧղͨ͠ঢ়ଶͷ··ΞϓϦʹདྷͯ΋Β͏ͨΊʹ׆༻Ͱ͖Δ࢓૊Έ ˔ ಛʹ৽نϢʔβʔ֫ಘΛ໨తͱͯ͠σΟϑΝʔυσΟʔϓϦϯΫΛར༻͢Δ ࡍɺΞϓϦΠϯετʔϧͷաఔͰͷ཭୤ΛݮΒͤΔͱخ͍͠

Slide 50

Slide 50 text

$PPLQBE*OD ©︎ 'JSFCBTF%ZOBNJD-JOLTͷϓϨϏϡʔϖʔδͷΧελϚΠζʹ͍ͭͯ Ϣʔβʔʹจ຺Λཧղͨ͠ঢ়ଶͷ··ΞϓϦʹདྷͯ΋Β͏ͨΊʹ׆༻Ͱ͖Δ࢓૊Έ ˔ 'JSFCBTF%ZOBNJD-JOLTͰΞϓϦΠϯετʔϧ༠ಋΛ͢Δࡍɺ ϓϨϏϡʔϖʔδ͕දࣔ͞ΕΔ

Slide 51

Slide 51 text

$PPLQBE*OD ©︎ 'JSFCBTF%ZOBNJD-JOLTͷϓϨϏϡʔϖʔδͷΧελϚΠζʹ͍ͭͯ Ϣʔβʔʹจ຺Λཧղͨ͠ঢ়ଶͷ··ΞϓϦʹདྷͯ΋Β͏ͨΊʹ׆༻Ͱ͖Δ࢓૊Έ ˔ 'JSFCBTF%ZOBNJD-JOLTͷιʔγϟϧϝλλά ύϥϝʔλͷTUɺTEɺTJΛઃఆ͢Δ͜ͱͰɺϓ ϨϏϡʔϖʔδͷΧελϚΠζ͕Ͱ͖Δ

Slide 52

Slide 52 text

$PPLQBE*OD ©︎ 'JSFCBTF%ZOBNJD-JOLTͷϓϨϏϡʔϖʔδͷΧελϚΠζʹ͍ͭͯ Ϣʔβʔʹจ຺Λཧղͨ͠ঢ়ଶͷ··ΞϓϦʹདྷͯ΋Β͏ͨΊʹ׆༻Ͱ͖Δ࢓૊Έ ˔ 'JSFCBTF%ZOBNJD-JOLTͷιʔγϟϧϝλλά ύϥϝʔλͷTUɺTEɺTJΛઃఆ͢Δ͜ͱͰɺϓ ϨϏϡʔϖʔδͷΧελϚΠζ͕Ͱ͖Δ ˓ 4/4ʹϦϯΫ͕γΣΞ͞ΕΔΑ͏ͳࢪࡦͰ΋ 0(1ΛΧελϚΠζ͢Δͷʹ׆༻Ͱ͖Δ

Slide 53

Slide 53 text

$PPLQBE*OD ©︎ "QQ4UPSF$VTUPN1SPEVDU1BHFʹ͍ͭͯ Ϣʔβʔʹจ຺Λཧղͨ͠ঢ়ଶͷ··ΞϓϦʹདྷͯ΋Β͏ͨΊʹ׆༻Ͱ͖Δ࢓૊Έ ˔ J04͔Βར༻Ͱ͖ΔΑ͏ʹͳͬͨετΞͷ ৽ػೳ ˔ εΫϦʔϯγϣοτɺ"QQϓϨϏϡʔɺϓϩ Ϟʔγϣϯ༻ςΩετΛΧελϜͰ͖Δ ˔ ΧελϜϓϩμΫτϖʔδΛ։ͨ͘Ίͷݻ༗ 63-ΛൃߦͰ͖Δ https://developer.apple.com/jp/app-store/custom-product-pages/

Slide 54

Slide 54 text

$PPLQBE*OD ©︎ 'JSFCBTF%ZOBNJD-JOLTͰ"QQ4UPSF$VTUPN1SPEVDU1BHFΛ࢖͏ Ϣʔβʔʹจ຺Λཧղͨ͠ঢ়ଶͷ··ΞϓϦʹདྷͯ΋Β͏ͨΊʹ׆༻Ͱ͖Δ࢓૊Έ ˔ 'JSFCBTF%ZOBNJD-JOLTΛ࢖͏৔߹ɺʮΞϓϦ͕Πϯετʔϧ͞Εͯͳ͍ ৔߹ͷભҠઌ J f ύϥϝʔλ Λઃఆ͢Δ͜ͱͰΧελϜϓϩμΫτϖʔδ Λ։ͨ͘ΊͷQQJEύϥϝʔλ෇͖ͷ"QQ4UPSFϦϯΫΛઃఆͰ͖Δ ˔ ྫ ˓ IUUQTEPNBJOQBHFMJOL MJOLIUUQTEPNBJOOBNF JTJJCJOBNFEPNBJO 
 J fl IUUQTBQQTBQQMFDPNKQBQQJE QQJE%

Slide 55

Slide 55 text

$PPLQBE*OD ©︎ Ϣʔβʔʹจ຺Λཧղͯ͠΋Β͏ Ϣʔβʔʹจ຺Λཧղͨ͠ঢ়ଶͷ··ΞϓϦʹདྷͯ΋Β͏ͨΊʹ׆༻Ͱ͖Δ࢓૊Έ ˔ "QQ4UPSFͷϓϩμΫτϖʔδ΍'JSFCBTF%ZOBNJD-JOLTͷQSFWJFXϖʔ δΛ࢖ͬͯจ຺Λཧղͯ͠΋Β͏ Before After

Slide 56

Slide 56 text

$PPLQBE*OD ©︎ 'JSFCBTF%ZOBNJD-JOLTͷϓϨϏϡʔϖʔδͱ J04͔ΒͷσΟϑΝʔυσΟʔϓϦϯΫʹ͍ͭͯ

Slide 57

Slide 57 text

$PPLQBE*OD ©︎ 'JSFCBTF%ZOBNJD-JOLTͷϓϨϏϡʔϖʔδʹ͍ͭͯ Firebase Dynamic LinksͷϓϨϏϡʔϖʔδͱiOS 16͔ΒͷσΟϑΝʔυσΟʔϓϦϯΫʹ͍ͭͯ ˔ 'JSFCBTF%ZOBNJD-JOLTͷϓϨϏϡʔϖʔδ͸εΩοϓ͢Δ͜ͱ͕Մೳ ˓ ˞FGSΦϓγϣϯΛ෇͚Δ͜ͱͰεΩοϓ͢Δ͜ͱ͕Մೳ ˔ 'JSFCBTF%ZOBNJD-JOLTͷϓϨϏϡʔϖʔδΛදࣔ͢Δ͜ͱͰɺʮ01&/ʯϘλϯ ͕ԡ͞ΕͨࡍʹϖʔετϘʔυʹμΠφϛοΫϦϯΫ͕อଘ͞ΕɺϖʔετϘʔυʹ ΑΔϦϯΫݕূ͕ߦΘΕΔ ˓ ϖʔετϘʔυΛ༻͍ͨϦϯΫݕূ͕ߦΘΕͳ͍ͷͰσΟϑΝʔυσΟʔϓϦϯ Ϋͷ৴པੑ͕མͪͯਖ਼ৗʹಈ͔ͳ͍৔߹͕͋ΔͷͰ஫ҙ

Slide 58

Slide 58 text

$PPLQBE*OD ©︎ 'JSFCBTF%ZOBNJD-JOLTͷϓϨϏϡʔϖʔδʹ͍ͭͯ Firebase Dynamic LinksͷϓϨϏϡʔϖʔδͱiOS 16͔ΒͷσΟϑΝʔυσΟʔϓϦϯΫʹ͍ͭͯ ˔ 'JSFCBTF%ZOBNJD-JOLTͷϦϯΫݕূʹϖʔετ Ϙʔυ΁ͷΞΫηε͕ඞཁ ˔ J04͔Β1BTUFCPBSEQFSNJTTJPO͕ಋೖ͞Εͨ ˓ ϓϥΠόγʔอޢͷͨΊʹଞΞϓϦ͔Βίϐʔ ϖʔετ͢Δࡍʹڐ୚͕ඞཁʹͳΔ

Slide 59

Slide 59 text

$PPLQBE*OD ©︎ J04͔ΒͷσΟϑΝʔυσΟʔϓϦϯΫ Firebase Dynamic LinksͷϓϨϏϡʔϖʔδͱiOS 16͔ΒͷσΟϑΝʔυσΟʔϓϦϯΫʹ͍ͭͯ ˔ 'JSFCBTF%ZOBNJD-JOLTͷέʔε ˓ ϓϨϏϡʔϖʔδΛεΩοϓͨ͠ࡍ͸ϖʔετϘʔυΛར༻͠ͳ͍ ˓ 'JSFCBTF%FFQ-JOL1BTUFCPBSE3FUSJFWBM&OBCMFEΦϓγϣϯΛແޮʹ ͨ͠৔߹ɺϖʔετϘʔυͷಡΈࠐΈ͕ߦΘΕͳ͍ ˔ ิ଍"EKVTUʹ͓͍ͯ͸ϖʔετϘʔυಡΈࠐΈ͸σϑΥϧτͰ͠ͳ͍ ˓ "EKVTUͰಋೖ͞Εͨ-JOL.FΛ࢖͏ࡍ͸ϖʔετϘʔυΞΫηεΛ ߦ͏

Slide 60

Slide 60 text

$PPLQBE*OD ©︎ J04͔ΒͷσΟϑΝʔυσΟʔϓϦϯΫ ˔ μΠφϛοΫϦϯΫΛԡͨ͠ϢʔβʔͷσόΠε৘ใΛอଘ͓ͯ͠Γɺ 'JSFCBTF4%,͸ॳճىಈ࣌ʹαʔόʹ୺຤৘ใΛૹΔ͜ͱͰɺԡ͞Εͨ Ͱ ͋Ζ͏ μΠφϛοΫϦϯΫΛϨεϙϯεͱͯ͠ฦ٫͢Δ ˓ ͜ͷࡍʹ୺຤৘ใ͔ΒͰ͸ΞϓϦΠϯετʔϧલʹԡ͞ΕͨϦϯΫΛҰ ҙʹಛఆͰ͖ͳ͍৔߹͕͋Δ ˙ σΟϑΝʔυσΟʔϓϦϯΫ͕ਖ਼͘͠ಈ͔ͳ͍৔߹͕ग़ͯ͘Δ ˙ ΞϓϦͷΠϯετʔϧ਺͕աখධՁ͞ΕΔ Firebase Dynamic LinksͷϓϨϏϡʔϖʔδͱiOS 16͔ΒͷσΟϑΝʔυσΟʔϓϦϯΫʹ͍ͭͯ

Slide 61

Slide 61 text

$PPLQBE*OD ©︎ J04͔ΒͷσΟϑΝʔυσΟʔϓϦϯΫ ˔ ϖʔετϘʔυʹμΠφϛοΫϦϯΫ͕อଘ͞Ε͍ͯΕ͹ɺαʔόʹϦΫΤ ετ͢Δࡍʹύϥϝʔλͱͯ͠Ұॹʹૹ৴͞Εͯɺਫ਼౓ߴ͍ϨεϙϯεΛಘ ΒΕΔɻ৴པੑͷ୲อʹར༻͞Ε͍ͯΔ ˔ ʮը໘ભҠ΍ܭଌͷਖ਼֬ੑʯͱʮϖʔετϘʔυύʔϛογϣϯΛදࣔ͢Δ ͜ͱʹΑͬͯൃੜ͢Δ཭୤ʯͷτϨʔυΦϑʹͳΓͦ͏ Firebase Dynamic LinksͷϓϨϏϡʔϖʔδͱiOS 16͔ΒͷσΟϑΝʔυσΟʔϓϦϯΫʹ͍ͭͯ

Slide 62

Slide 62 text

$PPLQBE*OD ©︎ ࢪࡦ΁ͷద༻

Slide 63

Slide 63 text

$PPLQBE*OD ©︎ έʔεελσΟൢଅΩϟϯϖʔϯ ˔ ൢଅΩϟϯϖʔϯ ˓ ྫ ΩϟϯϖʔϯྲྀೖϢʔβʔͷ$73 ΍$1"ʹର͢Δ-57ܭଌΛߦ͍͍ͨ ࢪࡦ΁ͷద༻ *CVR(ίϯόʔδϣϯ཰): ໨తߦಈΛͯ͘͠Ε͔ͨΛଌΔࢦඪ *CPA(֫ಘ֫ಘ୯Ձ): ৽نϢʔβʔ֫ಘͷͨΊʹ͔͔ͬͨඅ༻ *LTV(ސ٬ੜ֔Ձ஋): Ϣʔβʔ͕ΞϓϦʹͲΕ͚ͩͷརӹΛ΋ͨΒ͔͢Λද͢΋ͷ

Slide 64

Slide 64 text

$PPLQBE*OD ©︎ 'JSFCBTF%ZOBNJD-JOLTΛ׆༻͢Δ ˔ 'JSFCBTFίϯιʔϧͰੜ੒͞Εͨ%ZOBNJD-JOL ○ Firebaseίϯιʔϧ্ͰΫϦοΫ਺΍Πϯετʔϧ਺ͳͲͷύϑΥʔϚϯ εΛ֬ೝͰ͖Δ ○ Firebase AnalyticsͰऔಘͨ͠ϩάͱ෇͖߹ΘͤͯLTVܭଌ ࢪࡦ΁ͷద༻ - ൢଅΩϟϯϖʔϯ

Slide 65

Slide 65 text

$PPLQBE*OD ©︎ 'JSFCBTF%ZOBNJD-JOLTΛ׆༻͢Δ ࢪࡦ΁ͷద༻ - ൢଅΩϟϯϖʔϯ Ҿ༻: https://developers-jp.googleblog.com/2017/10/whats-new-with-firebase-dynamic-links.html

Slide 66

Slide 66 text

$PPLQBE*OD ©︎ ΑΓৄ͘͠ܭଌ͍ͨ͠৔߹ ࢪࡦ΁ͷద༻ - ൢଅΩϟϯϖʔϯ ˔ J5VOFT$POOFDU"QQ"OBMZUJDT$BNQBJHO(PPHMF"OBMZUJDT$VTUPN $BNQBJHOΛར༻͢Δ ˓ (PPHMF1MBZJ5VOFT$POOFDUͷղੳ༻ύϥϝʔλΛઃఆ͢Δ ొஃ࣌͸εϥΠυεΩοϓ͠·͢

Slide 67

Slide 67 text

$PPLQBE*OD ©︎ μΠφϛοΫϦϯΫʹΧελϜύϥϝʔλΛ෇༩ͯ͠ΞϓϦଆͰϋϯυϦϯά ˔ μΠφϛοΫϦϯΫΛར༻ͯ͠ΞϓϦଆͰྲྀೖݩΛ൑ผ͍ͨ͠৔߹ʹɺΧε λϜύϥϝʔλΛ෇༩ͯ͠ΞϓϦଆͰϋϯυϦϯά͢Δͷ΋༗ޮ ● https://customdomain.page.link/?link=https:// yourdomain.name?custom_parameter=:value&ibi=:custom_scheme&isi=:app store_id ˓ ͜ͷΑ͏ͳܗࣜͰμΠφϛοΫϦϯΫΛ૊ΈཱͯΔͱΞϓϦଆͰ IUUQTZPVSEPNBJOOBNF DVTUPN@QBSBNFUFSWBMVFͷܗࣜͰσΟ ʔϓϦϯΫ63-͕ड͚औΕΔͷͰDVTUPN@QBSBNFUFSͷ஋Λ΋ͱʹϩ άૹ৴ͳͲΛߦ͏ ࢪࡦ΁ͷద༻ - ൢଅΩϟϯϖʔϯ

Slide 68

Slide 68 text

$PPLQBE*OD ©︎ "EKVTUΛ׆༻͢Δ ࢪࡦ΁ͷద༻ - ൢଅΩϟϯϖʔϯ ˔ "EKVTUͰੜ੒͞ΕͨτϥοΧʔ෇͖ϦϯΫ ˓ ΞϓϦʹ࣮૷͞ΕͨFWFOUUSBDLFSͱ૊Έ߹ΘͤΔ͜ͱͰΩϟϯϖʔϯʹ Αͬͯྲྀೖͨ͠Ϣʔβʔͷ-57΍ίϗʔτΛμογϡϘʔυ্ͰݟΕΔ ˓ ֤छ޿ࠂϓϥοτϑΥʔϜͱ࿈ܞ͢Δ͜ͱͰϢʔβʔηάϝϯτΛઃఆ ͨ͠Γ͢Δ͜ͱ΋Մೳ

Slide 69

Slide 69 text

$PPLQBE*OD ©︎ "EKVTUΛ׆༻͢Δ ࢪࡦ΁ͷద༻ - ൢଅΩϟϯϖʔϯ Ҿ༻: https://www.adjust.com/ja/product/adjust-dashboard/ ొஃ࣌͸εϥΠυεΩοϓ͠·͢

Slide 70

Slide 70 text

$PPLQBE*OD ©︎ έʔεελσΟ༑ୡট଴ ˔ ༑ୡট଴ ˓ Ϣʔβʔ͕༑ୡΛট଴Ͱ͖ΔΑ͏ ʹɺট଴༻ϦϯΫΛੜ੒͍ͨ͠ ࢪࡦ΁ͷద༻

Slide 71

Slide 71 text

$PPLQBE*OD ©︎ έʔεελσΟ༑ୡট଴ ˔ ༑ୡট଴ ˓ Ϣʔβʔ͕༑ୡΛট଴Ͱ͖ΔΑ͏ʹট଴ϦϯΫΛੜ੒ ˓ 'JSFCBTF%ZOBNJD-JOLT"EKVTU ˙ ύϥϝʔλΛ෇༩͢Δ͜ͱͰಈతϦϯΫੜ੒Ͱ͖Δ͕ɺଞϢʔβʔʹ ରͯ͠4/4΍ϝοηʔδϯάΞϓϦ౳Ͱڞ༗͞ΕΔ͜ͱ͕༧૝͞Ε ΔͨΊɺ௕͗͢ΔϦϯΫ͸ආ͚͍ͨ ࢪࡦ΁ͷద༻ - ༑ୡট଴

Slide 72

Slide 72 text

$PPLQBE*OD ©︎ 'JSFCBTF%ZOBNJD-JOLT#VJMEFSΛ׆༻͢Δ ˔ 'JSFCBTF%ZOBNJD-JOLT#VJMEFS ˓ ΞϓϦͰࢦఆͨ͠ύϥϝʔλΛར༻ͯ͠ ୹ॖ63- ୹͍μΠφϛοΫϦϯ ΫൃߦͰ͖Δ ˙ ˞'JSFCBTFίϯιʔϧͰੜ੒͞ΕΔΑ͏ͳܗ͕ࣜͩɺ'JSFCBTFίϯ ιʔϧͷҰཡʹ͸ग़ͯ͜ͳ͍ ˙ IUUQTDPOTPMF fi SFCBTFHPPHMFDPNQSPKFDUQSPKFDU@OBNF EVSBCMFMJOLTEFUBJMTEZOBNJD@MJOLʹ௚઀ΞΫηε͢Δ͜ͱͰϦϯ Ϋৄࡉϖʔδʹ͸ඈ΂Δ ˓ ΫϦοΫ਺΍Πϯετʔϧ਺ͳͲ͸ίϯιʔϧͰݟΕͳ͍ͷͰɺ3&45"1*͔ΒݟΔ ͜ͱʹͳΔ ࢪࡦ΁ͷద༻ - ༑ୡট଴

Slide 73

Slide 73 text

$PPLQBE*OD ©︎ ·ͱΊ

Slide 74

Slide 74 text

$PPLQBE*OD ©︎ ·ͱΊ ˔ σΟʔϓϦϯΫΛ࣮ݱ͢ΔͨΊͷػೳ ˓ 6OJWFSTBM-JOLT$VTUPN63-4DIFNF ˔ Πϯετʔϧঢ়گʹدΒͳ͍ϦϯΫੜ੒ ˓ σΟϑΝʔυσΟʔϓϦϯΫ ˔ σΟʔϓϦϯΫΛखܰʹར༻Ͱ͖ΔΑ͏ʹ͢ΔͨΊͷαʔϏε ˓ 'JSFCBTF%ZOBNJD-JOLT"EKVTUͳͲ ˔ ϓϨϏϡʔϖʔδ΍ετΞϖʔδΛΩϟϯϖʔϯ༻ʹΧελϚΠζ͢Δ͜ͱͰϢ ʔβʔʹจ຺Λҙࣝ͠ଓ͚ͯ΋Β͑Δ ˔ ࢪࡦ࣮ࢪͷࡍʹ'JSFCBTF%ZOBNJD-JOLT΍"EKVTUΛ࢖͏͜ͱͰࢪࡦ෼ੳʹ΋׆ ༻Ͱ͖Δ

Slide 75

Slide 75 text

$PPLQBE*OD ©︎ https://cookpad.connpass.com/event/254459/

Slide 76

Slide 76 text

$PPLQBE*OD ©︎