AppsFlyer ์ฐ๋
ํตํด์ ์ธ๋ถ ์๋น์ค์ ์ฐ๋ํ์ฌ ๋ ํธ๋ฆฌํ๊ฒ ์ฌ์ฉํด๋ณด์ธ์.AppsFlyer ๊ณต์ ์ฐ๋์ ์ํฐํ๋ผ์ด์ฆ ํ๋์ธ ๊ฒฝ์ฐ์ ์ฌ์ฉํ์ค ์ ์์ต๋๋ค.
AppsFlyer๋?
AppsFlyer(์ฑ์คํ๋ผ์ด์ด)๋ ๋ชจ๋ฐ์ผ ๋ง์ผํ ๋ถ์ ๋ฐ ์ดํธ๋ฆฌ๋ทฐ์ ์๋ฃจ์ ์ผ๋ก, ๊ด๊ณ ์บ ํ์ธ์ ์ฑ๊ณผ๋ฅผ ์ถ์ ํ๊ณ ๋ชจ๋ฐ์ผ ์ฑ์ ์ฌ์ฉ์ ํ๋์ ์ต์ ํํ๋ ๋ฐ ๋์์ ์ฃผ๋ ๊ธ๋ก๋ฒ ํ๋ซํผ์ ๋๋ค. ์ฌ์ฉ์ ํ๋ ๋ฐ์ดํฐ๋ฅผ ์ข ํฉ์ ์ผ๋ก ๋ถ์ํ์ฌ ๋ง์ผํ ์ ๋ต์ ํจ๊ณผ๋ฅผ ํ๊ฐํ๊ณ , ๋ค์ํ ๋ง์ผํ ์ฑ๋์์์ ์ฑ๊ณผ๋ฅผ ํฌ๋ช ํ๊ฒ ํ์ ํ ์ ์์ต๋๋ค.
ํตํด๊ณผ AppsFlyer๋ฅผ ์ฐ๋ํ๋ฉด ๋ชจ๋ฐ์ผ ์ฑ์ ์ ์ ์ ๋ณด๋ฅผ ์ฌ์ฉ์ ์์ฑ์ผ๋ก ๋ถ๋ฌ์์, A/Bํ ์คํธ ํ๊ฒํ ์ด๋ ์ธ๋ถ ๋ถ์์ผ๋ก ํ์ฉํ ์ ์์ต๋๋ค.
AppsFlyer์ ํตํด์ ์ฐ๋ํ๊ณ ์ถ์ผ์ ๊ฐ์?
AppsFlyer์ ํตํด์ ์ฐ๋ํ๊ณ ๋ ๊น์ ๋ถ์๊ณผ ์ฑ์ฅ์ ๊ฒฝํํ์ธ์.
AppsFlyer ์ฐ๋ํ๊ธฐ
ํตํด ๋์๋ณด๋ ์ค์
-
์ฐ๋ํ๊ธฐ์ ์์, ์๋น์ค์ ํตํด SDK์ AppsFlyer SDK ๋ชจ๋ ์ค์น๊ฐ ๋์ด์์ด์ผํฉ๋๋ค.
-
ํตํด ๋์๋ณด๋์ ์ํฌ์คํ์ด์ค ์ค์ > ์ธ๋ถ ์ฐ๋ ํ๋ฉด์ ์ ์ํด์ฃผ์ธ์. (๋งํฌ)
-
AppsFlyer๋ฅผ ์ ํํฉ๋๋ค.
AppsFlyer ์ฐ๋ ์ํ์ ์ฐ๋์ ํ์ํ API Key๋ฅผ ํ์ธํ์ค ์ ์์ต๋๋ค. ์ฐ๋ ์ํ๋ AppsFlyer์ API Key ๋ฑ๋ก์ด ์๋ฃ๋๊ณ , AppsFlyer๋ก๋ถํฐ ํตํด์ ์ด๋ฒคํธ๊ฐ ์ ์์ ์ผ๋ก ์์ ๋๋ฉด ์ฐ๋ ์๋ฃ๋ก ๋ณ๊ฒฝ๋ฉ๋๋ค. ์ด์ ๋ค์ ๋จ๊ณ๋ AppsFlyer ๋์๋ณด๋์์ ์งํํ์๋ฉด ๋ฉ๋๋ค.
AppsFlyer ๋์๋ณด๋ ์ค์ - ํํธ๋ ์ถ๊ฐ

๋ฉ๋ด -> ์ค์ -> ํํธ๋ ๋ง์ผํ๋ ์ด์ค

ํํธ๋ ๋ง์ผํ๋ ์ด์ค ์ด๋

ํํธ๋ ๋ง์ผํ๋ ์ด์ค์์ Hackle ๊ฒ์ ํ Hackle ํํธ๋ ํด๋ฆญ

์ฐ๋๊ด๋ฆฌ ์ด๋
ํํธ๋ ์ฐ๋ ์ค์
- Hackle API Key ์ค์ ์์ ํตํด ๋์๋ณด๋์์ ๋ฐ๊ธ๋ API Key๋ฅผ ์ ๋ ฅํด์ฃผ์ธ์.
- Hackle ํํธ๋ ๊ถํ ์ค์

๋ฉ๋ด -> ์ค์ -> ํ์ฑํ๋ ์ฐ๋ (๊ถํ ํญ)
- ๊ธฐ๋ณธ ํฌ์คํธ๋ฐฑ ์ค์
์ ์ ์ ์ ์์ค๋ฅผ ์ค๊ฐ๋์ ํฌํจํ ๋ชจ๋ ๋ฏธ๋์ด ์์ค ์ ํ

์ ์ ์ ์ ์์ค ๋ณ๊ฒฝ
์ด์ AppsFlyer๋ก๋ถํฐ ํตํด๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๊ธฐ ์ํ ๋์๋ณด๋ ์ค์ ์ ๋ง์ณค์ต๋๋ค. ๋ง์ง๋ง์ผ๋ก SDK ์ฐ๋์์ ์ ํตํด ์ ์ก๋ ๋ฐ์ดํฐ๋ฅผ ํตํด์ ๋ค๋ฅธ ๋ฐ์ดํฐ์ ์ฐ๊ฒฐํด์ ๋ณผ ์ ์๋๋ก ํด์ฃผ์ธ์.
SDK ์ฐ๋ ์์
AppsFlyer์์ ์ ์ก๋ ๋ฐ์ดํฐ๋ฅผ ํตํด์์ ์ ์์ ์ผ๋ก ์ฌ์ฉํ๊ธฐ ์ํด์๋ Hackle Device ID๋ฅผ AppsFlyer SDK์ ๋ฐ๋์ ์ ์กํด์ผ ํฉ๋๋ค.
AppsFlyer ์ฐ๋ํ๋ ์ฝ๋์ ์๋์ ๊ฐ์ด ์ค์ ํด์ฃผ์ธ์. Hackle SDK ์ด๊ธฐํ (init)ํํ์ ์๋ ํจ์๋ฅผ ํธ์ถํด์ผ ์ ์์ ์ผ๋ก Hackle Device ID๋ฅผ ๋ถ๋ฌ์ฌ ์ ์์ต๋๋ค.
HackleCustomId๋ ๋ชจ๋ ํฌ์คํธ๋ฐฑ๊ณผ ํจ๊ป ์ ์ก๋๋ฉฐ, ์ฌ์ฉ์๋ฅผ ์๋ณํ๊ธฐ ์ํด ์ฌ์ฉ๋ฉ๋๋ค.
ํฌ์คํธ๋ฐฑ ์ด๋ฒคํธ๋ ์ผ๋ฐ์ ์ธ ์ด๋ฒคํธ์ ๋์ผํ๊ฒ ๊ณผ๊ธ๋ฉ๋๋ค.
HashMap<String, Object> customData = new HashMap<String,Object>();
String deviceId = HackleApp.getInstance().getDeviceId();
customData.put("hackleCustomId", deviceId);
AppsFlyerLib.setAdditionalData(customData);let deviceId = Hackle.app()!.deviceId
let customData = ["hackleCustomId": deviceId]
AppsFlyerLib.shared().customData = customData์ฑ ์ค์น ์ด๋ฒคํธ ($af_install)
์ฑ ์ค์น ์ด๋ฒคํธ๋$af_install ์ด๋ผ๋ ์ด๋ฒคํธ๋ก ํตํด์ ์ ์ก๋ฉ๋๋ค.
์ธ์ฑ ์ด๋ฒคํธ ($af_inapp)
์ถ๊ฐ๋ก ์ธ์ฑ ์ด๋ฒคํธ ํฌ์คํธ๋ฐฑ์ ์ค์ ํ๋ฉด, $af_inapp์ด๋ผ๋ ํํ๋ก ์ฑ์คํ๋ผ์ด์ด๋ฅผ ํตํด ์์ง๋๋ ์ด๋ฒคํธ๋ฅผ ํตํด์ชฝ์ผ๋ก๋ ์ ์กํ ์ ์์ต๋๋ค. ํฌ์คํธ๋ฐฑ์ผ๋ก ์์ง๋๋ ์ด๋ฒคํธ๋ ์ค์๊ฐ์ฑ์ด ์๊ตฌ๋๋ ๊ฒฝ์ฐ์ธ ์ธ์ฑ๋ฉ์์ง๋ ํธ์๋ฉ์์ง ํธ๋ฆฌ๊ฑฐ๋ก ์ฌ์ฉํ ์๋ ์๊ณ , ๋ฐ์ดํฐ ๋ถ์์์ ์ ํ ์ฌ๋ถ๋ ๊ธ์ก ์กฐํํ๋ ๋ชฉ์ ์ผ๋ก๋ ํ์ฉํ ์ ์์ต๋๋ค.

์ธ์ฑ ์ด๋ฒคํธ ์ค์
์ด๋ฒคํธ ๋ฐ์ ์๊ฐ ์กฐ์
๊ธฐ๋ณธ์ ์ผ๋ก ํฌ์คํธ๋ฐฑ์ผ๋ก ์์ง๋๋ ์ด๋ฒคํธ๋ ์ฑ์คํ๋ผ์ด์ด์์ ํตํด ์๋ฒ๋ก ์ด๋ฒคํธ๊ฐ ์ ์ก๋๋ ์๊ฐ ๊ธฐ์ค์ผ๋ก ์ ์ฅ๋ฉ๋๋ค. ์ด๊ฒฝ์ฐ ์ค์ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ ์๊ฐ๊ณผ๋ ์๋ถ์ ๋ ์ฐจ์ด๊ฐ ๋ ์ ์์ต๋๋ค. ํฌ์คํธ๋ฐฑ ํ๋ผ๋ฏธํฐ์์ Timestamp ํ๋ผ๋ฏธํฐ๋ฅผ ์ธ์คํจ, ์ธ์ฑ ์ด๋ฒคํธ๋ก ์ ์กํ๋ฉด, ์ค์ ์ฑ์คํ๋ผ์ด์ด์์ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ ์๊ฐ ๊ธฐ์ค์ผ๋ก ์ด๋ฒคํธ๊ฐ ์ ์ฅ๋ฉ๋๋ค.

Timestamp
Updated 2 months ago
