HarmonyOS
HarmonyOS Strategy SDK는 HAR 형식으로 통합하며, DevEco Studio 5.0+ 및 HarmonyOS API 12+ 프로젝트 환경이 필요합니다. 통합하기 전에 먼저 Analytics SDK 초기화를 완료하십시오.
최신 버전: v1.0.0
업데이트 시간: 2026-07-24
리소스 다운로드: 다운로드
1. 개요
AE 4.4 버전부터 운영 모듈에 클라이언트 트리거 작업 기능이 출시되어, 앱 내 신규 유저 가입, 캐릭터 생성 등의 시나리오에서 밀리초 단위 트리거 요구를 지원하며 실시간 A/B 분할도 지원합니다. 클라이언트 측에서는 ThinkingData SDK가 AE 백엔드와 통신하여 작업을 가져오고 계산합니다.
App 측에 ThinkingData SDK를 통합해야 합니다. App 측에서는 ThinkingData SDK와의 상호 작용만 고려하면 되며, AE 백엔드의 작업 세부 사항은 신경 쓸 필요가 없습니다.
2. 통합
2.1 ohpm으로 SDK 통합
호스트 프로젝트의 루트 디렉터리(oh-package.json5가 있는 디렉터리)에서 다음을 실행합니다:
ohpm install @thinkingdata/strategy
@thinkingdata/analytics, @thinkingdata/remoteconfig는 Strategy의 dependencies에 선언되어 있어 @thinkingdata/strategy와 함께 자동 설치되므로 별도로 install할 필요가 없습니다.
모듈의 oh-package.json5에 다음과 같이 선언합니다:
"dependencies": {
"@thinkingdata/strategy": "1.0.0"
}
2.2 HAR 수동 통합
클라이언트 트리거 작업에는 다음 ThinkingData SDK가 필요합니다.
| SDK 이름 | 기능 소개 | 버전 요구 사항 |
|---|---|---|
| TDAnalytics | 데이터 수집 및 처리 | 1.9.0 |
| TDRemoteConfig | AE 백엔드의 설정 정보 가져오기 | 1.0.0 |
| TDStrategy | 클라이언트 트리거 기능 제공 | 1.0.0 |
- HAR 패키지를 가져옵니다(
TDStrategy.har,TDAnalytics.har,TDRemoteConfig.har) - HAR을 호스트 프로젝트에 넣습니다(예:
entry/libs/) oh-package.json5에 file 의존성을 선언합니다:
"dependencies": {
"@thinkingdata/strategy": "file:./libs/TDStrategy.har",
"@thinkingdata/analytics": "file:./libs/TDAnalytics.har",
"@thinkingdata/remoteconfig": "file:./libs/TDRemoteConfig.har"
}
3. 초기화
초기화 순서: 먼저 TDAnalytics.init을 호출한 후 TDStrategy.init을 호출합니다.
Analytics SDK 초기화:
import { common } from '@kit.AbilityKit';
import { TDAnalytics } from '@thinkingdata/analytics';
const context = getContext(this) as common.UIAbilityContext;
await TDAnalytics.init(context, 'AppId', 'ServerUrl');
TDAnalytics.login('your_client_user_id');
Strategy SDK 초기화:
import {
TDStrategy,
TDStrategyMode,
TDStrategySettings,
} from '@thinkingdata/strategy';
const settings = new TDStrategySettings('AppId', 'ServerUrl');
settings.mode = TDStrategyMode.NORMAL;
TDStrategy.init(context, settings);
// 최신 작업 설정을 능동적으로 가져오기(선택 사항)
TDStrategy.fetch();
4. 콜백 리스너 설정
Analytics를 초기화한 후 TDStrategy.init을 호출하기 전에 TDStrategy SDK에 콜백 리스너를 설정합니다.
import {
TDStrategy,
TDStrategyResult,
TDStrategyResultListener,
} from '@thinkingdata/strategy';
const listener: TDStrategyResultListener = {
onTriggerResult: (result: TDStrategyResult) => {
// 작업이 적중하면 여기에서 푸시 콘텐츠를 처리
},
};
TDStrategy.setTriggerListener(listener);
4.1 콜백 데이터 모델
export class TDStrategyResult {
appId: string;
taskId: string;
channelMsgType: string;
pushId: string;
content: Record<string, Object>;
userParams: Record<string, Object>;
opsProperties: Record<string, Object>;
}
속성 설명
| 속성 이름 | 타입 | 설명 |
|---|---|---|
| channelMsgType | string | 채널 메시지 타입 |
| appId | string | AE 프로젝트의 app id |
| pushId | string | 운영 작업의 채널 전송 ID |
| taskId | string | 운영 작업의 ID |
| content | Record<string, Object> | 운영 작업의 푸시 콘텐츠 |
| userParams | Record<string, Object> | 클라이언트 채널의 커스텀 파라미터 |
| opsProperties | Record<string, Object> | 클라이언트 트리거 작업에 포함된 채널 정보로, 도달 퍼널 이벤트의 회신 파라미터로 사용됩니다 |

