고급 가이드
1. 초기화 파라미터
초기화 시 전달하는 TDSettings 설정에 대한 자세한 설명은 다음과 같습니다
1.1 TDSettings
| 속성 이름 | 타입 | 설명 |
|---|---|---|
| appId | NSString | AE 백엔드에서 생성한 프로젝트의 app id |
| serverUrl | NSString | AE 백엔드에서 생성한 프로젝트의 server url |
| mode | TDSDKMode | SDK 실행 모드 열거형 |
| enableLog | BOOL | 로그 출력 활성화 여부 |
| remoteConfigFetchParams | NSDictionary | (TDRemoteConfig 사용) 구성을 가져올 때의 커스텀 요청 파라미터 |
| encryptVersion | NSInteger | (ThinkingSDK 사용) 데이터 암호화 활성화 시 키 버전 번호 |
| encryptKey | NSString | (ThinkingSDK 사용) 데이터 암호화 활성화 시 공개 키 정보 |
| defaultTimeZone | NSTimeZone | (ThinkingSDK 사용) SDK가 시간 서식 지정에 사용하는 시간대 |
| instanceName | NSString | (ThinkingSDK 사용) 수집 SDK 인스턴스의 별칭 설정 |
| enableAutoPush | BOOL | (ThinkingSDK 사용) 푸시 클릭 자동 수집 활성화 여부 |
| enableAutoCalibrated | BOOL | (ThinkingSDK 사용) 자동 시간 보정 활성화 여부 |
1.2 TDSDKMode
| 열거형 값 | 설명 |
|---|---|
| TDSDKModeNomal | 데이터를 정상적으로 전송하고 저장합니다. |
| TDSDKModeDebug | Debug 모드로 수집 데이터를 전송합니다. 디바이스 id를 AE 콘솔의 테스트 디바이스 목록에 추가해야 합니다. AE 콘솔 -> Debug 모드 메뉴 항목에서 실시간으로 수집된 데이터를 확인할 수 있습니다. 전송된 데이터는 AE 시스템에 저장됩니다. |
TDSDKModeDebugOnly | DebugOnly 모드로 수집 데이터를 전송합니다. 디바이스 id를 AE 콘솔의 테스트 디바이스 목록에 추가해야 합니다. AE 콘솔 -> Debug 모드 메뉴 항목에서 실시간으로 수집된 데이터를 확인할 수 있습니다. 전송된 데이터는 AE 시스템에 저장되지 않습니다. |
2. 클라이언트 파라미터
클라이언트 트리거 작업을 생성할 때 클라이언트 조건을 입력할 수 있습니다. 설정 방법은 클라이언트 트리거 작업 생성을 참고하십시오.
클라이언트 조건에서 사용할 수 있는 파라미터는 클라이언트가 자동 수집하는 환경 파라미터와 TDRemoteConfig SDK로 설정한 클라이언트 파라미터입니다. TDRemoteConfig SDK가 제공하는 인터페이스로 커스텀 클라이언트 파라미터를 설정한 후, 해당 커스텀 클라이언트 파라미터를 AE 백엔드에 추가하여 운영 작업에서 사용할 수 있습니다.
주의: 클라이언트에서 SET한 파라미터의 이름과 타입은 AE 운영 백엔드에 설정한 클라이언트 파라미터와 일치해야 합니다.
클라이언트 파라미터 추가
#import <TDRemoteConfig/TDRemoteConfig.h>
// Set client parameters, multiple settings will take the union
[TDRemoteConfig addClientParams:@{
@"key": @"value"
}];
클라이언트 파라미터 삭제
[TDRemoteConfig removeClientParam:@"key"];
클라이언트 파라미터 가져오기
// Get all client params
NSDictionary *dict = [TDRemoteConfig getClientParams];
// Get client parames value for key
id obj = [TDRemoteConfig getClientParamValueForKey:@"key"];
누적값 타입의 클라이언트 파라미터
[TDRemoteConfig accumulateNum:@(1) toClientParamKey:@"number_type_key"];
3. 가져오기 시점 커스터마이즈
3.1 자동 가져오기
다음 시나리오에서 SDK는 원격 설정 데이터를 자동으로 가져옵니다
- App 콜드 스타트
- App 포그라운드/백그라운드 전환 간격이 6시간을 초과한 경우
- ThinkingSDK 계정 체계가 변경된 경우(예: login, logout)
3.2 수동 가져오기
SDK 메서드를 수동으로 호출하여 언제든지 원격 설정을 가져옵니다
[TDStrategy fetch];
이 API에는 내부적으로 빈도 제한이 있으므로 너무 자주 가져오지 마십시오.
4. 도달 퍼널 이벤트
클라이언트 트리거 채널을 생성할 때 도달 퍼널 설정을 활성화할 수 있습니다. 설정 방법은 채널 설정을 참고하십시오.
도달 퍼널을 활성화하면 퍼널 단계와 연결할 메타 이벤트 이름을 설정할 수 있습니다. 이렇게 하면 해당 채널을 사용하는 운영 작업의 데이터 상세 페이지에서 설정한 단계의 전환 데이터를 확인할 수 있습니다.
실제 도달, 푸시 클릭으로 선택한 이벤트는 다음 요구 사항을 충족해야 합니다.
- 이벤트에는 운영 전용 파라미터가 포함되어야 합니다. 이 파라미터는 푸시 콘텐츠 TDStrategyResult 객체의 opsProperties 속성으로 가져올 수 있으며, 구체적인 전송 방법은 다음과 같습니다.
#import <ThinkingSDK/ThinkingSDK.h>
- (void)tdStrategyDidTrigger:(TDStrategyResult *)result {
// "ops_click"을 실제 메타 이벤트 이름으로 바꿔야 합니다
[TDAnalytics track:@"ops_click" properties:result.opsProperties];
}
5. 테스트 발송
채널의 사용 가능 여부와 작업의 유효성을 빠르게 검증할 수 있도록 SDK는 테스트 모드를 지원합니다.
TDSettings *settings = [[TDSettings alloc] init];
// debug
settings.mode = TDSDKModeDebug;
settings.enableLog = YES;
settings.appId = @"APPID";
settings.serverUrl = @"SERVER_URL";
[TDApp startWithSetting:settings];
클라이언트에서 debug 모드를 활성화하면 5s마다 테스트 작업을 가져옵니다. AE 운영 모듈에서 채널 테스트 또는 작업 테스트를 생성할 수 있으며, 작업이 트리거를 기다리는 동안 프런트엔드 페이지의 진행 노드를 확인할 수 있습니다.
클라이언트 트리거 테스트 발송에는 테스트 디바이스가 필요합니다. 테스트 디바이스 목록에서 테스트 디바이스를 선택하거나 추가할 수 있습니다

