integrationlatest接入文档 / 鸿蒙
鸿蒙
提示
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 分流。客户端侧由数数 SDK 来实现与 AE 后端的通信,完成任务的拉取与计算。
在 App 端需要集成数数 SDK。App 端只需要关注与数数 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
客户端触发式任务需要依赖以下数数 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> | 客户端触发任务携带的通道信息,用于触达漏斗事件的回执参数 |
这篇文档对你有帮助吗?

