Unity SDK: 이벤트 및 매출 트래킹

Singular Unity SDK
다운로드 Singular Unity SDK version 2.1.2
호환성

Unity 4.7.2+

샘플 앱 베스트 프랙티스에 기반한 전체 SDK 연동 방법 확인을 위해 샘플 앱을 참조해주세요.
연동 가이드

 

이벤트 트래킹

캠페인 성과를 분석하고 KPI를 측정하기 위해 Singular를 통해 앱 내의 이벤트 데이터를 수집할 수 있습니다.

예를 들어 게임 고객사는 유저 로그인, 회원 가입, 튜토리얼 완료, 레벨 업 등과 같은 데이터를 수집하기를 원할 수 있습니다.

이 경우 Event 메서드를 사용해서 Singular로 인앱이벤트를 보낼 수 있습니다.

주의: 서드 파티 파트너 및 외부 분석 솔루션과의 호환성을 위해 이벤트 이름과 속성에는 영어를 사용하세요.

SingularSDK.Event 메서드
정의 트래킹을 위해 이벤트를 Singular로 전송
메서드
public static void Event(string name)
public static void Event(string name, params object[] args)
public static void Event(Dictionary<string, object> args,
string name)

주의: 딕셔너리를 보내는 경우 값은 반드시 다음 타입을 사용해야 합니다: string, int, long, float, double, null, ArrayList, Dictionary<String,object>

사용예

// 파라미터 없이 이벤트 이름만 전송
  SingularSDK.Event("Login");
  
  // 로그인 이벤트에 두 개의 키 밸류 쌍을 보내는 예시
  SingularSDK.Event("Login", "Key1", "Value1", "Key2", 1234);
  
// JSONEvent로 딕셔너리를 보내는 예시 SingularSDK.Event(new Dictionary<string, object>() { {"Key1", "Value1"}, {"Key2", new Dictionary<string, object>() { {"SubKey1", "SubValue1"}, {"SubKey2", "SubValue2"} } } }, "JSONEvent");

매출 트래킹

캠페인 성과 및 캠페인 ROI를 분석하기 위해 Singular를 통해 앱 내의 매출 데이터를 수집할 수 있습니다. 수집하는 경우 Singular의 리포트, 로그 익스포트, 포스트백을 통해 해당 데이터를 확인할 수 있습니다.

Singular에 매출 이벤트를 보내려면 다음 중 하나의 메서드를 사용하세요.

주의: 매출을 여러 다른 통화 단위로 보내더라도 데이터 확인 시에는 Singular 계정에 설정한 고객사의 통화 단위로 자동으로 변환되어 표시됩니다.

선택 사항 1 (권장): SingularSDK.InAppPurchase

Unity IAP(In-App Purchases)를 활용해서 매출 이벤트를 트래킹할 수 있습니다. 이 경우 두 가지 장점이 있습니다. 

  • Singular가 보다 자세한 리포트를 제공하는데 필요한 여러 정보가 포함됩니다.
  • Singular에서 구매 영수증을 받을 수 있어 백엔드에서 구매를 검증하는데 활용하고 어트리뷰션 프러드 룰에 사용할 수 있습니다.
SingularSDK.InAppPurchase 메서드
정의 구매 이벤트 트래킹을 위해 IAP product를 Singular로 전송
메서드
public static void InAppPurchase(Product product,
Dictionary<string, object> attributes, bool isRestored = false)
public static void InAppPurchase(string eventName,
Product product, Dictionary<string, object> attributes,
bool isRestored = false)
public static void InAppPurchase(IEnumerable<Product> products, Dictionary<string, object> attributes, bool isRestored = false)
public static void InAppPurchase(string eventName,
IEnumerable<Product> products, Dictionary<string, object>
attributes, bool isRestored = false)

주의:

  • product:  IAP: UnityEngine.Purchasing.Product에서 수신된 product 오브젝트입니다.
  • attributes: Singular에 추가 정보를 전달할 때 사용하는 파라미터입니다. 전달할 속성이 없는 경우 null 값을 전달하세요.
  • isRestored: 트랜잭션 복구 여부를 기재하며, 기본 값은 false입니다.
사용예
// 추가 속성이 없는 단일 프로덕트의 IAP
SingularSDK.InAppPurchase(myProduct, null);
// 추가 속성이 있는 단일 프로덕트의 IAP
var attr = new Dictionary<string, object>() {
["my_first_attribute"] = "value1",
["my_second_attribute"] = "value2"};
 
SingularSDK.InAppPurchase(myProduct, attr);

// 추가 속성이 없는 단일 프로덕트의 IAP 
// 커스텀 이벤트 이름 사용

SingularSDK.InAppPurchase("MyCustomProduct",
myProduct, null);

// IAP with list of products, no extra attributes
SingularSDK.InAppPurchase(myProductList, null);

// 추가 속성이 없는 프로덕트 리스트의 IAP
// 커스텀 이벤트 이름 사용

SingularSDK.InAppPurchase("MyCustomProducts",
myProductList, null);

선택 사항 2: Revenue와 CustomRevenue 메서드

"수동으로" 트랜잭션 통화단위와 구매 금액을 포함한 다양한 선택 사항의 구매 정보를 Singular에 전달하려면 Revenue 메서드를 사용하세요. 유사 메서드인 CustomRevenue를 사용하면 매출 이벤트에 커스텀 이름을 추가할 수도 있습니다.

SingularSDK.Revenue 메서드
정의 Singular에 매출 이벤트 전송
메서드
public static void Revenue(string currency, double amount)

public static void Revenue(string currency,
double amount, string productSKU, string productName,
string productCategory, int productQuantity, double productPrice)
주의: 통화(currency)는 세 글자로 이뤄진 ISO 4217 통화 코드를 사용합니다. 예: “USD”, “EUR”, “KRW”
사용예
// 프로덕트 세부 사항 없이 매출 이벤트 전송
SingularSDK.Revenue("USD", 9.99);

// 프로덕트 세부 사항을 포함하여 매출 이벤트 전송
SingularSDK.Revenue("USD", 50.50, "abc123", "myProductName", 
"myProductCategory", 2, 25.50)
SingularSDK.CustomRevenue 메서드
정의 Singular에 매출 이벤트를 커스텀 이름으로 전송
메서드
public static void CustomRevenue(string eventName, 
string currency, double amount) public static void CustomRevenue(string eventName,
string currency, double amount, string productSKU,
string productName, string productCategory, int productQuantity,
double productPrice)
주의: 통화(currency)는 세 글자로 이뤄진 ISO 4217 통화 코드를 사용합니다. 예: “USD”, “EUR”, “KRW”
사용예
// 커스텀 이름으로 매출 이벤트 전송
SingularSDK.CustomRevenue("MyCustomRevenue", "USD", 9.99);

// 커스텀 이름으로 프로덕트 세부 사항을 포함하여 매출 이벤트 전송
SingularSDK.CustomRevenue("MyCustomRevenue", "USD", 50.50, 
"abc123", "myProductName", "myProductCategory", 2, 25.50)
도움이 되었습니까?