menu
Is this helpful?

# CocosCreator

::: 팁

구현하기 전에 데이터 액세스 준비를 확인하십시오.

CocosCreator SDK는 iOS, Android, Mac, Web, Facebook 미니게임, Google Play 미니게임을 지원합니다.

:::

최신 버전: v3.0.0 다운로드 (opens new window)

업데이트 시간: 2023-08-28

소스 코드: Source Code (opens new window)

# 1. SDK 구현

CocosCreator SDK (opens new window) 다운로드 및 압축 해제

# 2. 초기 설정

TE SDK 도입 후, 코드에 TDAnalytics를 실행 가능

// SDK 정보 구성
var config = {
    appId: "YOUR_APPID", // 프로젝트 APP ID
    serverUrl: "YOUR_SERVER_URL", // 수신 URL
    autoTrack: { // 자동 추적
        appShow: true, // 앱 열기
        appHide: true // 앱 닫기
    }
};
// SDK 인스턴스 객체 생성
var te = new TDAnalytics(config);
// SDK 초기화
TDAnalytics.init();

파라미터 설명:

  • APPID: 프로젝트의 APPID, TE 프로젝트 관리 화면에서 획득 가능

  • SERVER_URL: 데이터 전송 주소

    • SaaS의 경우 프로젝트 관리 → 데이터 전송 주소에서 확인해주세요
    • 프라이빗 서버 구축의 경우, 데이터 전송 주소를 지정할 수 있습니다.
  • autoTrack:선택 사항. 자동 수집 기능을 활성화할지 여부를 나타냅니다. 다음 자동 수집 이벤트를 나타냅니다. 기본적으로 모두 비활성화됩니다.

    • appShow: 게임을 자동으로 수집하고 시작하거나 백그라운드에서 포어그라운드로 들어가는지 여부
    • appHide: 포어그라운드에서 백그라운드로 게임을 자동으로 수집하고 이 방문의 시간을 기록합니다 (시작부터 백그라운드까지)

::: 경고

데이터를 전송하기 전에, WeChat 플랫폼이나 다른 플랫폼의 개발 설정에서 데이터 전송 URL을 서버 도메인 이름 요청 목록에 추가해야 합니다.

:::

# 3. 주요 기능

주요 기능을 사용하기 전에, 유저 식별 규칙을 확인해 주세요;

SDK는 게스트 ID를 자동으로 생성하고 로컬에 저장됩니다; 유저가 로그인하기 전에, 게스트 ID는 식별 ID로 사용됩니다.

주의: 게스트 ID는 유저가 앱을 다시 설치할 때 리셋됩니다.

# 3.1 계정 ID 설정

유저가 로그인할 때, login을 호출하여 사용자의 계정 ID를 설정할 수 있습니다. TE 플랫폼은 계정 ID를 식별 ID로 logout을 호출하기 전까지 유지합니다. login을 여러 번 호출하면 이전 계정 ID가 덮어씌워집니다.

// 사용자의 고유 로그인 식별자, 데이터 추적에서 #account_id에 해당합니다. #Account_id는 현재 TE입니다.
TDAnalytics.login("TE");

이 방법으로 로그인 이벤트는 전송되지 않습니다.

# 3.2 공통 이벤트 속성 설정

공통 이벤트 속성은 모든 이벤트에 포함될 속성입니다. setSuperProperties를 호출하여 설정할 수 있습니다. 이벤트를 전송하기 전에 공통 이벤트 속성을 설정해 주세요.

예를 들어: 플레이어의 레벨, 전투력, 소지 자원 등의 속성

var superProperties = {
    channel : "te", //string
    age : 1,//number
    isSuccess : true,//boolean
    birthday : new Date(),//time
    object : { key : "value" },//object
    object_arr : [ { key : "value" } ],//object array
a    rr : [ "value" ]//array
};
// 슈퍼 속성 설정
TDAnalytics.setSuperProperties(superProperties);

공통 이벤트 속성은 캐시에 저장되며, 앱을 시작할 때마다 호출할 필요가 없습니다. 만약 호출한다면 setSuperProperties: 이전에 설정한 공통 이벤트 속성은 덮어씌워집니다.

  • 이벤트 속성은 TDJSONObject타입인 경우, 요소별로 속성으로 분리됩니다.
  • Key는 해당 속성의 이름으로 문자열 타입이며, 영문자와 숫자, "_"를 포함, 최대 50자입니다. TE 시스템은 일괄적으로 소문자로 통일됩니다.
  • Value는 해당 속성의 값으로, 문자열, 숫자, 불리언, 시간, 객체, 배열, 리스트 객체를 지원합니다.

이벤트 속성, 사용자 속성은 공통 이벤트 속성과 일치해야 합니다.

# 3.3 이벤트 전송

track을 호출하여 이벤트를 전송합니다. 데이터 트래킹 정책을 사전에 준비한 후에 전송하십시오.

다음은 모델 코드입니다. 예: 아이템 구매

TDAnalytics.track(
  "product_buy",
  {product_name: "product name"}
);

이벤트명은 string 타입으로, 영문자와 숫자, "_"를 포함하여 최대 50자까지 입력 가능합니다.

# 3.4 유저 속성 설정

일반적인 유저 속성에 대해서는, userSet을 사용하여 설정할 수 있습니다. UserSet은 원래의 값을 덮어씁니다. 본래 해당 속성에 값이 없는 경우는, 속성이 새로 생성됩니다. 다음은 코드 예제입니다.

//현재 유저명은 TA입니다
TDAnalytics.userSet({ username: "TA" });
//현재 유저명은 TE입니다
TDAnalytics.userSet({ username: "TE" });

# 4. 코드 예시 (Example Code)

아래의 코드 예시에 모든 작업이 포함되어 있으며, 아래 순서대로 사용하는 것을 권장합니다:

var config = {
  appId: "YOUR_APPID",
  serverUrl: "YOUR_SERVER_URL",
  autoTrack: {
    appShow: true,
    appHide: true
  }
};
// TE 인스턴스 생성
TDAnalytics.init(config);
//유저가 로그인한 경우, 유저의 계정 ID를 고유 식별자로 설정할 수 있습니다
TDAnalytics.login("TE");
//슈퍼 속성을 설정한 후, 각 이벤트는 슈퍼 속성을 가지게 됩니다
var superProperties = {
    channel : "te",
    age : 1,
    isSuccess : true,
    birthday :  new Date(),
    object : { key : "value" },
    object_arr : [ { key : "value" } ],
    arr : [ "value" ]
};
TDAnalytics.setSuperProperties(superProperties);
// 초기화
TDAnalytics.init();
// 이벤트 업로드
TDAnalytics.track({
    eventName: "product_buy", // 이벤트_이름
    properties: {
        product_name: "book"
    } 
});
// 유저 속성 설정
TDAnalytics.userSet({
    properties: {
        username: "TE"
    }
});