이벤트 수동 추적¶
Hive SDK에서는 자동으로 추적하는 이벤트(Install, Open, Update, Purchase) 외에도 필요한 이벤트를 각 어트리뷰션 대시보드에 등록하여 수동으로 추적할 수 있습니다. 예를 들어 게임 튜토리얼 완료 시(TutorialComplete) 또는 특정 미션 달성 시(MissionClear)와 같이 특정한 상황을 추적할 수 있습니다. 이벤트 수동 추적은 이벤트 자동 추적 설정을 완료한 다음에 진행해야 합니다.
Adjust로 이벤트 수동으로 추적하기¶
- 원하는 커스텀 이벤트를 Adjust 대시보드에 등록하고 앱 토큰과 이벤트 토큰을 얻어야 합니다. 앱 토큰은 대시보드 메인에서, 이벤트 토큰은 대시보드 > All Settings > Events에서 확인합니다. 토큰 발급 방법에 대해서는 Adjust에서 제공하는 대시보드 안내를 참고하세요.
- 앱 토큰과 이벤트 토큰을 hive_config.xml에 추가합니다. 아래 예제 코드를 참고하세요.
- Adjust 대시보드에서는 앱 스푸핑 방지를 위한 SDK Signature 기능을 제공합니다. 관련 기능을 사용하려면 Adjust와의 계약 사항을 확인해야 합니다. 관련 기능을 사용하려면 키를 발급받아 hive_config.xml의
secretId
,info1
,info2
,info3
,info4
에 추가하세요.
<providers>
<!-- (코드 생략) -->
<!-- Adjust 노드 id 필드는 설정하지 않습니다. -->
<!-- Adjust 노드 name 필드는 "Adjust" 고정값입니다. -->
<!-- event 노드 name 필드는 게임사에서 임의로 설정합니다. 단, sendEvent() 호출을 위해 다른 어트리뷰션에서도 동일한 값을 사용해야 합니다.-->
<Adjust name="Adjust" id="unused" key="APP_TOKEN" secretId="1" info1="5432112345" info2="334123" info3="555333" info4="111333">
<events>
<event name="TutorialComplete" value="TutorialComplete_EVENT_TOKEN" />
<event name="MissionClear" value="MissionClear_EVENT_TOKEN" />
</events>
<!-- (코드 생략) -->
</Adjust>
</providers>
event name
을 사용합니다. name
은 API 호출 시 파라미터로 사용하며 value
는 각 어트리뷰션의 대시보드에서 확인할 수 있습니다. Analytics.sendEvent("TutorialComplete");
Analytics.sendEvent("MissionClear");
Airbridge로 이벤트 수동으로 추적하기¶
- 필요한 토큰을 발급받습니다. 토큰 발급 방법에 대해서는 Airbridge에서 제공하는 대시보드 안내를 참고하세요.
- 대시보드 > 설정 > 토큰 관리에서 App SDK Token과 App Name을 받습니다.
- hive_config.xml에 토큰과 앱 이름 및 이벤트 설정을 추가합니다. 아래의 hive_config.xml 예제 코드를 참고하세요. Windows 에서는 토큰과 앱 이름 설정은 필요하지 않고 Hive 콘솔 설정이 필요합니다.
- Airbridge에서는 앱 스푸핑 방지를 위한 SDK Signature를 제공합니다. 관련 기능을 사용하려면 우선 Airbridge와의 계약 사항을 확인해야 합니다. 키를 발급받아 hive_config.xml의
secretId
,secret
값으로 추가하세요. SDK 시그니처 보안 정보에 대한 자세한 내용은 에어브릿지 가이드를 참고하세요. Android, iOS에서만 지원하며 Windows에서는 지원하지 않습니다. - Windows와 Android, iOS를 함께 적용하는 경우, 사전 설정과 관련해 Airbridge에 문의하세요.
- Analytics API sendEvent()를 호출하여 이벤트를 전송합니다. 이벤트 전송 시 hive_config.xml에 추가한
event<
태그의name
과value
를 사용합니다.name
은 API 호출 시 파라미터로 사용하며value
는 각 어트리뷰션의 대시보드에서 확인할 수 있습니다.Analytics.sendEvent("TutorialComplete");
Analytics.sendEvent("MissionClear");
hive_config.xml 예제 코드¶
<providers>
<!-- (코드 생략) -->
<!-- Airbridge 설정하기 -->
<!--Airbridge 노드 name 필드는 "Airbridge" 고정값입니다. -->
<!--Airbridge 노드 id 필드는 설정하지 않습니다. -->
<!-- event 노드 name, value 필드는 게임사에서 임의로 설정합니다. -->
<Airbridge name="Airbridge" key="APP_SDK_TOKEN" appName="APP_NAME" secretId="SECRET_ID" secret="SECRET">
<events>
<event name="TutorialComplete" value="Tutorial Complete" />
<event name="MissionClear" value="Mission Clear" />
</events>
</Airbridge>
<!-- (코드 생략) -->
</providers>
Singular, Appsflyer, Firebase Analytics로 이벤트 수동으로 추적하기¶
- 각 어트리뷰션 대시보드에서 키를 발급받습니다. 키 발급 방법에 대해서는 각 어트리뷰션에서 제공하는 대시보드 안내를 참고하세요.
- Singular: 대시보드에서 SDK Key와 SDK SecretKey를 받습니다.
- Appsflyer: 대시보드 > 앱 설정에서 Dev 키를 받습니다.
- Firebase Analytics: 키 발급이 필요하지 않습니다.
- 아래 안내를 따라 hive_config.xml에 설정합니다. 아래 예제 코드를 참고하세요. Hive SDK iOS(Native, Unity, Unreal)에서 AppsFlyer 어트리뷰션을 사용할 경우, Apple AppID 설정을 위해 `itunseConnectAppId` 값을 설정합니다.
<providers> <!-- Singular 설정하기 --> <!-- Singular 노드 name 필드는 "Singular" 고정값입니다. --> <!-- event 노드 name 필드는 게임사에서 임의로 설정합니다. 단, sendEvent() 호출을 위해 다른 어트리뷰션에서도 동일한 값을 사용해야 합니다.--> <!-- event 노드 value 필드는 게임사에서 임의로 설정합니다. --> <Singular name="Singular" id="SDK_KEY" key="SDK_SECRET_KEY"> <events> <event name="TutorialComplete" value="Tutorial Complete" /> <event name="MissionClear" value="Mission Clear" /> </events> </Singular> <!-- AppsFlyer 설정하기 --> <!-- AppsFlyer 노드 name 필드는 "AppsFlyer" 고정값입니다. --> <!-- AppsFlyer 노드 id 필드는 설정하지 않습니다. --> <!-- event 노드 name 필드는 게임사에서 임의로 설정합니다. 단, sendEvent() 호출을 위해 다른 어트리뷰션에서도 동일한 값을 사용해야 합니다.--> <!-- event 노드 value 필드는 게임사에서 임의로 설정합니다. --> <AppsFlyer name="AppsFlyer" id="unused" key="DEV_KEY" itunseConnectAppId="909923112"> <events> <event name="TutorialComplete" value="Tutorial Complete" /> <event name="MissionClear" value="Mission Clear" /> </events> </AppsFlyer> <!-- Firebase Analytics 설정하기 --> <!-- event 노드 name 필드는 게임사에서 임의로 설정합니다. 단, sendEvent() 호출을 위해 다른 어트리뷰션에서도 동일한 값을 사용해야 합니다.--> <!-- event 노드 value 필드는 게임사에서 임의로 설정합니다. --> <firebase> <events> <event name="TutorialComplete" value="TutorialComplete" /> <event name="MissionClear" value="MissionClear" /> </events> </firebase> </providers>
- Analytics API sendEvent()를 호출하여 이벤트를 전송합니다. 이벤트 전송 시 hive_config.xml에 추가한
event name
을 사용합니다.name
은 API 호출 시 파라미터로 사용하며value
는 각 어트리뷰션의 대시보드에서 확인할 수 있습니다.Analytics.sendEvent("TutorialComplete");
Analytics.sendEvent("MissionClear");
sendEvent()로 이벤트 전송하기¶
유저의 행동을 추적할 때 모든 행동을 추적하기 보다는 유저의 행동이 특정 조건을 만족시켰을 때 (예. 튜토리얼 완료) 어트리뷰션에 추적 이벤트를 전송하기를 권장합니다. 유저 행동 추적 이벤트를 전송하려면 Analytics API의 sendEvent()
함수를 호출하세요. sendEvent()
함수의 첫 번째 파라미터 값으로는 hive_config.xml 설정 파일에 정의한 <event>
요소의 name
속성 값을 입력하세요.
다음은 유저가 튜토리얼을 완료했다는 것을 알리기 위한 TutorialComplete 이벤트를 마케팅 어트리뷰션에 전송하는 예제 코드입니다.
API Reference: hive.Analytics.sendEvent
API Reference: Analytics::sendEvent
API Reference: Analytics.sendEvent
API Reference: AnalyticsInterface .sendEvent
API Reference: HIVEAnalytics:sendEvent