React Native SDK 이벤트 및 매출 트래킹

Singular React Native SDK
다운로드 Singular React Native SDK 1.1.6 버전
호환성 React Native 0.46.4+
연동 가이드

 

이벤트 트래킹

캠페인 성과를 분석하고 KPI를 측정하기 위해 Singular를 통해 앱 내의 이벤트 데이터를 수집할 수 있습니다. 예를 들어 고객사는 게임 앱에서 유저 로그인, 회원 가입, 튜토리얼 완료, 레벨 업 등과 같은 데이터를 수집하기를 원할 수 있습니다. 이 경우 event eventJSON 메서드를 사용해서 Singular로 인앱이벤트를 보낼 수 있습니다.

주의:

  • 서드 파티 파트너 및 외부 분석 솔루션과의 호환성을 위해 이벤트 이름과 속성에는 영어를 사용하세요.
  • 이벤트 이름은 32자 이하의 ASCII 캐릭터로 제한됩니다. ASCII 캐릭터가 아닌 문자열은 UTF-8로 변환되었을 때 32 byte 미만이어야 합니다.
  • 속성과 값은 500자 이하의 ASCII 캐릭터로 제한됩니다.
Singular.event 메서드
정의 이벤트 트래킹을 위해 이벤트명을 Singular에 전송
사용예
Singular.event(“Sign-up”);
Singular.eventWithArgs 메서드
정의 이벤트 트래킹을 위해 이벤트명과 전달하고자 하는 추가 정보를 map/object 형식으로 Singular에 전송
사용예
Singular.eventWithArgs('Level-Up', { level: '5', score: '130' });

매출 트래킹

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

Singular에 매출 이벤트를 보내는 경우 Android나 iOS의 인앱구매(IAP, In-App Purchase) 프로세스에서 받은 purchase 오브젝트를 전달하는 것을 권장하며, 이 경우 Singular가 보다 자세한 리포트를 제공하는데 필요한 여러 정보가 포함됩니다. 또한 Singular에서 Google의 구매 영수증을 받을 수 있어 백엔드에서 구매를 검증하는데 활용하고 어트리뷰션 프러드 룰에 사용할 수 있습니다.

React Native에서 Purchase 오브젝트 전달

이 메서드를 React Native의 In-App Purchase 패키지를 통해 앱 내에서 트랜잭션을 관리해야 합니다.

Singular.inAppPurchase 메서드
정의 Singular로 IAP 이벤트 전송
사용예
// Singular Purchase 관련 클래스들을 임포트에 추가
import {
 Singular,
 SingularConfig,
 SingularIOSPurchase,
 SingularAndroidPurchase,
} from 'singular-react-native';

let singularPurchase = null;

if (Platform.OS === 'ios') {
 singularPurchase = new SingularIOSPurchase(
   product.revenue,
   product.currency,
   purchase.productId,
   purchase.transactionId,
   purchase.transactionReceipt,
 );
} else if (Platform.OS === 'android'){
 singularPurchase = new SingularAndroidPurchase(
   product.revenue,
   product.currency,
   purchase.transactionReceipt,
   purchase.signatureAndroid,
 );
}

Singular.inAppPurchase('report iap', singularPurchase);

네이티브 코드로 Purchase 오브젝트 전달

React Native의 In-App Purchase 패키지를 사용하지 않더라도 네이티브 iOS와 Android 코드를 사용해서 purchase 오브젝트를 포함한 매출 이벤트를 Singular로 전달할 수 있습니다.

iOS

iapComplete:transaction 메서드
정의 모든 세부 사항을 포함하여 IAP 이벤트를 Singular로 전송. 선택 사항으로 커스텀 매출 이벤트명을 지정하는 것도 가능
사용예
// report the transaction details to Singular
[Singular iapComplete:transaction];

// report the transaction details to Singular with a custom name
[Singular iapComplete:transaction withName:@"MyCustomRevenue"];

Android

build.gradle 파일에 다음 코드를 추가해서 Android IAP 기능의 장점을 활용할 수 있습니다.

implementation 'com.singular.sdk:singular_sdk:9.+
Singular.revenue 메서드
정의 Google 빌링 라이브러리에서 획득한 purchase 오브젝트를 포함하여 Singular로 매출 이벤트 전송
사용예
Singular.revenue("USD", 5.50, purchase);
Singular.customRevenue 메서드
정의 Google 빌링 라이브러리에서 획득한 purchase 오브젝트를 포함하여 Singular로 매출 이벤트를 커스텀 이름으로 전송
사용예
Singular.customRevenue("MyCustomRevenue", 
"USD", 5.50, purchase);

Purchase 오브젝트 없이 매출 이벤트 전송

앞서 설명한 매출 이벤트 전송 방식의 사용을 권장하지만, purchase 오브젝트 없이 트랜잭션의 통화 단위와 매출액을 사용해서 매출 이벤트를 Singular로 전달할 수도 있습니다. 이 방식으로 매출 이벤트를 리포팅하는 경우 Singular에서 구매 영수증을 받을 수 없어 트랜잭션을 검증할 수 없음에 유의하세요.

더 알아보기
Singular.revenue 메서드
정의 Purchase 오브젝트 없이 매출 통화 단위와 매출액을 통해 Singular에 매출 이벤트 전송
사용예
Singular.revenue("USD", 5.50);
Singular.customRevenue 메서드
정의 Purchase 오브젝트 없이 매출 통화 단위와 매출액을 통해 Singular에 매출 이벤트를 커스텀 이름으로 전송
사용예
Singular.customRevenue("MyCustomRevenue", "USD", 5.50);