Android
Android SDKの最小システムバージョンはAndroid 4.0(API 14)です
最新バージョン:v1.3.0
更新日:2026-07-22
リソースのダウンロード:ダウンロード
1. 概要
AE 4.4から、エンゲージモジュールに「構成センター」機能がリリースされました。AE管理画面で機能パラメータの構成を追加し、クライアントSDKでAppに取得することで、プレイヤーとのインタラクション内容をきめ細かくカスタマイズできます。
このドキュメントでは、クライアントSDKの統合手順を説明します。App側はThinkingData SDKとのやり取りだけを考慮すればよく、AE管理画面の構成の詳細を気にする必要はありません。
2. 統合
2.1 SDKの自動統合
Projectレベルのbuild.gradleファイルに、次の依存関係の設定を追加します
buildscript {
repositories {
jcenter()
mavenCentral()
}
}
moduleプロジェクトディレクトリのbuild.gradleファイルに依存関係を追加します:
dependencies {
implementation 'cn.thinkingdata.android:TDRemoteConfig:1.3.0'
}
2.2 SDKの手動統合
構成センターには、次のThinkingData SDKが必要です:
| SDK名 | 機能の紹介 | バージョン要件 |
|---|---|---|
| TDAnalytics | データの収集と処理を行います | >= 3.1.0 |
| TDRemoteConfig | AE管理画面の設定情報を取得します | >= 1.0.0 |
| TDCore | 基本コンポーネントの機能を提供します | >= 1.1.0 |
1.ページ上部のリソースのダウンロードリンクをクリックし、SDKをダウンロードして解凍します
2.libsフォルダーにTDAnalytics.aar、TDCore.aar、TDRemoteConfig.aarを追加します
3.build.gradle に次の設定を追加します
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar','*.aar'])
}
3. 初期化
メインスレッドでSDKを初期化します
import cn.thinkingdata.remoteconfig.TDRemoteConfig;
import cn.thinkingdata.core.TDApp;
import cn.thinkingdata.core.TDSettings;
// TDSettingsの設定の詳しい使い方は【応用ガイド】を参照してください
TDSettings settings = new TDSettings();
settings.appId = "AppId";
settings.serverUrl = "ServerUrl";
TDApp.init(context,settings);
4. 使用方法
4.1 データ構造のサンプル
"configId" : {
"templateId" : [
{
"#strategy_id" : "2024121001",
"paramater_x" : "1111",
"#ops_receipt_properties" : {}
}
],
"#custom_params" : {
}
}
補足:
configId:エンゲージ管理画面の構成センターモジュールで作成した「構成項目ID」。業務モジュールの情報を識別するために使用します。構成項目の詳細は構成項目管理を参照してください
templateId:業務側で「構成項目」の下に追加した「テンプレートID」。具体的な機能モジュールの情報を識別するために使用します。構成テンプレートの詳細は構成テンプレート管理を参照してください
#strategy_id:戦略の一意のID。戦略のライフサイクル管理に使用します。構成戦略の詳細は構成戦略管理を参照してください
paramater_x:構成テンプレートのパラメータ。機能モジュールに必要な構成パラメータに対応します
#ops_receipt_properties:イベントの回収統計に使用します。戦略の効果を自動集計する(未対応)場合は、回収イベントにこのプロパティを含める必要があります
#custom_params:クライアントの構成チャンネルに設定したカスタムパラメータ。クライアントに渡す必要があるユーザープロパティ情報を定義できます。
4.2 ローカルのデフォルト値の設定
TDRemoteConfig SDKで構成項目のデフォルト値を設定できます。AEサーバーで構成項目が追加されていない場合や、ローカルでリモートの値を取得できなかった場合に、SDKはローカルのデフォルト値を取得します。
形式
ローカルのデフォルト値の構造は、次の形式にする必要があります:
{
"configId": {
"templateId": [
{
"paramater_x" : ""
}
]
}
}
直接設定
try {
JSONObject params = new JSONObject();
JSONObject configIdJson = new JSONObject();
JSONObject templateIdJson = new JSONObject();
templateIdJson.put("paramater_x","");
configIdJson.put("templateId",templateIdJson);
params.put("configId",configIdJson);
TDRemoteConfig.setDefaultValues(params);
} catch (JSONException e) {
e.printStackTrace();
}
ローカルファイルからの設定
val filePath = "";//ファイルパス
TDRemoteConfig.setDefaultValues(filePath)
デフォルト値のクリア
TDRemoteConfig.clearDefaultValues()
4.3 値の取得方法
構成項目の下で、リリース済みで配信中の特定タイプの戦略内容を取得します:
JSONArray array = TDRemoteConfig.getData().get("configId").get("templateId").arrayValue();
補足:
configId:エンゲージ管理画面の構成センターモジュールで作成した「構成項目ID」。業務モジュールの情報を識別するために使用します。構成項目の詳細は構成項目管理を参照してください
templateId:業務側で「構成項目」の下に追加した「テンプレートID」。具体的な機能モジュールの情報を識別するために使用します。構成テンプレートの詳細は構成テンプレート管理を参照してください
取得ルール
あるkeyの値を取得する手順:
- そのkeyに対応するリモート構成の値を優先して取得します
- リモートでそのkeyが構成されていない場合は、そのkeyのローカルのデフォルト値を探します
- ローカルのデフォルト値にもそのkeyがない場合は、空を返します。
4.4 更新のリッスン
SDKの初期化前に、構成の取得成功の通知リスナーを追加します
TDRemoteConfig.addConfigFetchListener(new TDRemoteConfig.OnConfigFetchListener() {
@Override
public void onFetchSuccess(JSONObject statusData) {
}
});
通知名
onFetchSuccess (構成の取得成功)
通知に含まれるパラメータ
通知には、デフォルトで今回のリクエストと前回のリクエストの間に一時的に無効化(suspend)、強制オフライン(force_offline)に変更された戦略のステータスが含まれます。業務の要件に応じて利用できます。使用しない場合は無視してかまいません。
次の方法で通知パラメータを取得します
JSONObject map = statusData.optJSONObject("strategy_status_map");
対応するvalueの構造は次のとおりです。構成項目のテンプレートで戦略IDが20241209の戦略のステータスを表しています。
{
"configId" : {
"templateId" : {
"20241209" : "suspend"
}
}
}
5. テスト送信
接続の利用可否と構成戦略の有効性をすばやく検証できるよう、SDKはテストモードの有効化に対応しています。
TDSettings settings = new TDSettings();
settings.mode = TDSettings.TDMode.DEBUG;
settings.appId = "AppId";
settings.serverUrl = "ServerUrl";
TDApp.init(context,settings);
クライアントでdebugモードを有効にすると、5秒ごとにテスト戦略を取得します。AEのエンゲージモジュールではテンプレートテストまたは戦略テストを作成できます。構成の取得を待っている間は、フロントエンドのページで進捗ノードを確認できます。
操作ドキュメント構成テンプレート管理の、クライアントのテスト送信の部分を参照してください。
クライアントSDKのテスト送信にはテストデバイスが必要です。テストデバイスリストでテストデバイスを選択または追加できます。

