integrationlatest接入文档 / Android
Android
最新版本:v1.0.1
更新时间:2026-07-24
资源下载:下载
1. 概述
从 6.1 版本开始,AE 新增实验套件功能,支持在 AE 后台创建实验,设置对照组和实验组的变量值,通过客户端 SDK 拉取至App,为不同组别的用户展示不同的内容。
本文介绍客户端SDK的集成过程,App 端只需要关注与数数 SDK 的交互即可,不需要关心 AE 后台的任务细节。
需要注意的是,实验 SDK 必须搭配配置中心 SDK 一起使用。
2. 集成
2.1 自动集成 SDK
- 在
Project级别的build.gradle文件中添加如下配置依赖
buildscript {
repositories {
jcenter()
mavenCentral()
}
}
- 在
module工程目录下的build.gradle文件中添加依赖项:
dependencies {
implementation 'cn.thinkingdata.android:TDExperiment:1.0.1'
}
2.2 手动集成 SDK
配置中心需要依赖以下 数数 SDK:
| SDK 名称 | 功能介绍 | 版本要求 |
|---|---|---|
| TDAnalytics | 实现数据采集与处理 | >= 3.3.6 |
| TDRemoteConfig | 拉取 AE 后台的配置信息 | >= 1.3.0 |
1.点击页面上方资源下载链接,下载 SDK 并解压
2.libs 文件夹中添加 TDAnalytics.aar、TDCore.aar、TDRemoteConfig.aar、TDExperiment.aar
3.在 build.gradle 添加如下配置
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar','*.aar'])
}
3. 初始化
实验 SDK 需要搭配分析 SDK 使用。请先完成 TDAnalytics 初始化,再初始化实验 SDK。
// 初始化采集 SDK
TDAnalytics.init(context, "APP_ID", "https://YOUR_SERVER_URL");
// 初始化实验 SDK
TDExperimentConfig config = new TDExperimentConfig("APP_ID", "https://YOUR_SERVER_URL");
config.automaticExposureTracking = true;
config.customBucketId = new HashMap<>();
config.customFetchParams = new JSONObject();
config.initCallback = new TDCallback() {
@Override
public void onFetchSuccess() {
// 拉取实验配置信息成功
}
@Override
public void onError(int code, String message) {
// 拉取实验配置信息失败
}
};
TDExperiment.enableLog(true);
TDExperiment.init(context, config);
初始化参数说明:
- appId:APP ID
- serverUrl:数据上报地址
- automaticExposureTracking:默认设置为 true,在 get 获取实验参数的时候自动上传曝光事件
- customBucketId:自定义分流主体
- customFetchParams:客户端配置通道上的自定义参数
- enableLog:是否开启调试日志(通过 TDExperiment.enableLog 设置)
- initCallback.onFetchSuccess:拉取实验配置信息成功
- initCallback.onError:拉取实验配置信息失败
4. 使用
4.1 获取实验信息
TDExperiment.getValueAsString(key);
TDExperiment.getValueAsDouble(key);
TDExperiment.getValueAsBoolean(key);
TDExperiment.getValueAsJson(key);
如果 automaticExposureTracking 为 true,在 get 的时候会自动上传曝光事件。
4.2 上传曝光事件
可以调用 exposure 方法,手动上传曝光事件。
TDExperiment.exposure(key);
4.3 主动拉取所有实验信息
TDExperiment.fetch();
TDExperiment.fetch().addOnSuccessListener(new OnSuccessListener() {
@Override
public void onSuccess() {
// 成功
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(int code, String msg) {
// 失败
}
});
4.4 自定义分流主体
Map<String, String> bucketId = new HashMap<>();
bucketId.put("bucket_id", "account_id");
TDExperiment.setCustomBucketId(bucketId);
4.5 自定义请求参数
JSONObject params = new JSONObject();
params.put("key", "value");
TDExperiment.setCustomFetchParams(params);
这篇文档对你有帮助吗?

