러더스택 - 단일 대상(디바이스 모드)

문서

러더스택은 기업이 고객 데이터를 수집, 연동, 다양한 목적지로 라우팅할 수 있도록 지원하는오픈소스 고객 데이터 플랫폼(CDP)입니다. 고객 데이터 파이프라인을 관리할 수 있는 중앙 집중식 플랫폼을 제공하여 웹사이트, 모바일 앱, 서버, 클라우드 서비스 등 다양한 소스에서 데이터를 쉽게 수집할 수 있습니다.

Singular SDK는 "디바이스 모드" 대상이라고 하는 Rudderstack용 플러그인으로 사용할 수 있습니다. 아래 지침은 Rudderstack에서 Singular 대상을 추가하는 방법을 설명합니다.

이 연동은 Rudderstack에서 구축 및 유지 관리한다는 점에 유의하세요. 구현 중에 문제가 발생하면 Rudderstack에 문의하시기 바랍니다.

대상 가이드 엔지니어링 팀
전제 조건 이 문서에서는 앱에 이미 Rudderstack iOS, Android, React Native 또는 Cordova SDK가 연동되어 있다고 가정합니다. 디바이스 모드 및 모바일 SDK에 대한 자세한 내용은 Rudderstack 설명서를 참조하세요.

이 연동을 사용하려면 iOS(Native Obj-C 또는 Swift), Android(Java 또는 Kotlin), React Native 또는 Cordova용 Rudderstack의 모바일 SDK를 사용 중이어야 합니다. 이 연동은 다른 프레임워크와 호환되지 않습니다!

지원되는 기능
  1. 기본 인스톨 어트리뷰션
  2. SkAdNetwork 지원
  3. 애플 검색 광고 어트리뷰션
  4. 맞춤형 인앱 이벤트 추적
  5. 구매 추적
  6. 맞춤 사용자 ID
지원되지 않는 항목
  1. 메타 인스톨 리퍼러 어트리뷰션
  2. 딥링킹
  3. 제한된 데이터 공유 지원

다른 프레임워크에 대한 지원이 필요하거나 Singular SDK에서 제공하는 "전체 기능"을 원하는 경우, 러더스택과 독립적으로 Singular SDK를 구현해야 합니다. SDK 옵션 및 프레임워크는 여기를 참조하세요.

시작하기

  1. 러더스택 대시보드에서 소스를 추가합니다. 그런 다음 대상 목록에서 Singular를 선택합니다.
  2. 대상에 이름을 지정하고 계속을 클릭합니다.

연결 설정

Singular를 대상으로 성공적으로 구성하려면 다음 설정을 구성해야 합니다:



  • API 키: 여기에 Singular "SDK 키"를 입력합니다. 이 필드는 필수 입력 항목입니다.
  • 비밀번호: Singular 비밀번호를 입력합니다. 이 필드는 필수 필드이며 RudderStack iOS 및 Android SDK와의 디바이스 모드 연동에 필요합니다.

    싱귤러 대시보드의 "개발자 도구 > SDK 연동 > SDK 키" 아래에서 싱귤러 "SDK 키" 받습니다.


    참고: "클라우드 모드" 연동의 경우, API 키(SDK 키) 값만 입력합니다.
    "비밀"은 비워둡니다.

  • 세션 이벤트 이름: 이 설정은 클라우드 모드를 통해 이벤트를 전송하는 경우에만 적용됩니다.
  • 이벤트를 전송하려면 디바이스 모드를 사용합니다: Android 또는 iOS 플랫폼을 사용하는 경우 이 설정을 활성화하여 디바이스 모드를 통해 이벤트를 전송할 수 있습니다. 그런 다음 Singular 디바이스 모드 가이드에 따라 프로젝트에 Singular를 추가하는 단계를 따르세요.

    장치 모드를 통해 이벤트를 전송할 때 RudderStack을 사용하면 어떤 이벤트를 삭제하거나 허용할지 지정할 수도 있습니다. 자세한 내용은 클라이언트 측 이벤트 필터링 가이드를 참조하세요.

디바이스 모드 연동 추가하기

RudderStack에서 Singular를 대상으로 설정한 후, 연동 플랫폼에 따라 다음 단계에 따라 프로젝트에 추가하세요.

iOS iOS v2 Android React Native Cordova

iOS 앱에 Singular를 추가하려면 다음 단계를 따르세요:

  1. 포드파일에서 다음 종속 요소를 추가합니다:

    ruby

    pod 'Singular-SDK', '11.0.4'
    pod 'Rudder-Singular', '1.0.0'
  2. 종속성을 추가한 후 pod 설치 명령을 실행하고 AppDelegate.m 파일에 다음 임포트를 추가합니다:

    Obj-C

    //Objective-C
    #import <rudder> #import <ruddersingularfactory.h>
  3. RSClient를 초기화합니다:

    Obj-C

    //Objective-C
    RSConfigBuilder *configBuilder = [[RSConfigBuilder alloc] init]; [configBuilder withDataPlaneUrl:<data_plane_url>]; [configBuilder withFactory:[RudderSingularFactory instance]]; RSClient *rudderClient = [RSClient getInstance:<write_key> config:[configBuilder build]];

식별

기기 모드 연동의 경우, Singular SDK는 RudderStack의 식별 메서드를 사용하여 사용자 ID를 사용자 지정 사용자 ID에 매핑합니다. RudderStack은 식별된 사용자 ID를 싱귤러에 전달하기 위해 싱귤러의 setCustomUserId API를 사용합니다.

안드로이드와 iOS SDK의 식별 호출 샘플은 아래와 같습니다:

iOS(Obj-C) Android(Kotlin)
[[RSClient getInstance] identify:@"1hKOmRA4el9Zt1WSfVJIVo4GRlm"];

Track

트랙 호출을 사용하면 모든 사용자 작업 및 이와 관련된 속성을 캡처할 수 있습니다. 각 사용자 작업은 이벤트로 간주됩니다.

사용자 지정 이벤트 추적

사용자 지정 트랙 호출을 사용하면 앱에서 발생하는 사용자 지정 이벤트를 추적할 수 있습니다. 러더스택은 이러한 호출을 Singular로 전송하여 설치 후 사용자 지정 이벤트로 처리하고 관련 보고서에서 사용할 수 있도록 합니다.

Android 및 iOS SDK의 커스텀 트랙 호출 샘플은 아래와 같습니다:

iOS(Obj-C) Android(Kotlin)
[[RSClient getInstance] track:@"Product Reviewed" properties:@{
        @"product_id" : @"345676543",
        @"review_id" : @"123454387"
    }];

구매 추적

싱귤러는 구매 이벤트 추적을 지원합니다. 구매 속성이 포함된 이벤트가 전송될 때마다 구매 추적을 구현합니다(0 값 포함). 선택적으로 통화 필드를 ISO 코드로 전달할 수도 있습니다.

기본 통화는 USD로 설정되어 있습니다.

구매 추적 호출 샘플은 아래와 같습니다:

iOS(Obj-C) Android(Kotlin)
[[RSClient getInstance] track:@"Order Completed" properties:@{
        @"revenue" : @1251,
        @"currency" : @"INR"
    }];

화면

화면 메서드를 사용하면 사용자가 모바일 화면을 볼 때마다 관련 선택적 속성과 함께 기록할 수 있습니다. 이 호출은 웹 애플리케이션의 페이지 호출과 유사하지만 모바일 기기 전용입니다.

Android 및 iOS SDK의 화면 호출 샘플은 다음과 같습니다:

iOS(Obj-C) Android(Kotlin)
[[RSClient sharedInstance] screen:@"Home" properties:@{
    @"category" : @"launcher"
}];

위의 스니펫에서 RudderStack은 화면에 대한 추가 정보와 함께 조회된 화면과 관련된 모든 정보를 캡처합니다.

RudderStack은 화면 이벤트를 사용자 지정 이벤트로 Singular에 보냅니다.

Reset

재설정 메서드는 현재 사용자의 ID를 재설정하고 새로운 익명 세션을 생성합니다. 사용자가 로그아웃할 때 호출해야 합니다.

RudderStack은 Singular의 unsetCustomUserId 메서드를 호출하여 사용자의 ID를 재설정합니다.

안드로이드와 iOS SDK 모두에 대한 재설정 호출 샘플은 다음과 같습니다:

iOS(Obj-C) 안드로이드(Kotlin)
[[RSClient getInstance] reset];

SKAdNetwork(SKAN) 지원 구현하기

iOS SDK를 초기화하기 전에 다음 코드를 추가하여 SKAdNetwork 연동을 위한 제어 권한을 Singular에 부여하세요:

중요:

  • 수동SkanConversionManagement = true로 설정하면 전환 값을 수동으로 업데이트해야 합니다. 이렇게 하면 싱귤러의 SKAN 모델이 사용자를 대신하여 CV 값을 업데이트할 수 없습니다. '관리' 모드를 활성화하려면 이를 'false'로 설정하세요.
  • 기다림 추적 권한 부여와 시간 초과 간격 설정은 앱이 iOS 앱 추적 투명성(ATT) 프롬프트를 사용하는 경우에만 사용해야 합니다. ATT를 표시하는 경우 이 값을 300으로 설정해야 합니다.

Obj-C

[RudderSingularIntegration setSKANOptions:YES
        isManualSkanConversionManagementMode:NO
withWaitForTrackingAuthorizationWithTimeoutInterval:@300
        withConversionValueUpdatedHandler:^(NSInteger conversionValue){
    // Receive a callback whenever the Conversion Value is updated
    NSLog(@"SKAN handler %ld",conversionValue);
}];