integrationlatestデータ連携 / 応用ガイド
応用ガイド
1. 初期化パラメータ
HarmonyOSのRemoteConfigは、TDRemoteConfigSettingsで初期化します(Analytics SDKの初期化設定とは独立しています)。詳細なフィールドは次のとおりです:
1.1 TDRemoteConfigSettings
| プロパティ名 / メソッド | タイプ | 説明 |
|---|---|---|
| appId | string | AE管理画面で作成したプロジェクトのapp id(必須) |
| serverUrl | string | AE管理画面で作成したプロジェクトのserver url(必須) |
| templateCode | string | テンプレートcode。渡さない場合、SDK内部でデフォルトテンプレートを使用します |
| mode | TDRemoteConfigMode | SDKの実行モードの列挙型。デフォルトはNORMAL |
| customFetchParams | Record<string, Object> | 初期化時に渡すカスタム取得パラメータ(Fetchパラメータと同等) |
| customBucketId | Record<string, string> | カスタムバケットID(A/Bテストの強制上書き用) |
| setFetchTask(callbacks) | — | init段階の取得コールバックを登録(onLocalCacheReady / onSuccess / onFailure) |
ログのスイッチはSettingsには含まれていません。次を使用してください:
TDRemoteConfig.enableLog(true);
例:
import {
TDRemoteConfig,
TDRemoteConfigSettings,
TDRemoteConfigMode
} from '@thinkingdata/remoteconfig';
const settings = new TDRemoteConfigSettings();
settings.appId = 'YOUR_APP_ID';
settings.serverUrl = 'YOUR_SERVER_URL';
settings.mode = TDRemoteConfigMode.NORMAL;
settings.customFetchParams = { platform: 'harmonyos' };
settings.setFetchTask({
onLocalCacheReady: () => {},
onSuccess: () => {},
onFailure: (code, error) => {}
});
TDRemoteConfig.init(context, settings);
1.2 TDRemoteConfigMode
| 列挙値 | 説明 |
|---|---|
| NORMAL | 通常モード。キャッシュと有効期限のポリシーに従って構成を取得し、ローカルに保存します。 |
| DEBUG | Debugモード。テスト送信や、より頻繁な構成の強制取得に便利です。デバイスをAEコンソールのテストデバイスリストに追加する必要があります。エンゲージ管理画面でテストの進捗ノードを確認できます。 |
説明:HarmonyOSのRemoteConfigは
NORMAL/DEBUGのみを提供し、Analytics側のDEBUG_ONLYは含まれません。データ収集関連のDebugモードは、Analytics SDKで別途設定してください。
2. 取得タイミングのカスタマイズ
2.1 自動取得
次のシナリオでは、SDKがリモート構成データを自動的に取得します:
- Appのコールドスタート(
TDRemoteConfig.initの後に初回の取得がトリガーされます) - Appのフォアグラウンド/バックグラウンドの切り替えで、ローカルの構成の有効期限が切れている場合(有効期限はサーバーから
expirationPeriodで配信され、デフォルトは12時間) - ThinkingData Analyticsのアカウント体系に変更があった場合(
login、logout、setDistinctIdなど) - ネットワークが利用不可から利用可能に回復したときの補完取得
- タイマーによる定期チェック:通常モードでは約30sごとに有効期限切れかどうかを確認し、Debugモードでは約5sごとに取得します
2.2 手動取得
SDKのメソッドを手動で呼び出して、いつでもリモート構成を取得できます:
TDRemoteConfig.fetch();
チェーン形式のコールバックの例:
TDRemoteConfig.fetch()
.onSuccess(() => {
// 構成が更新されました
})
.onFailure((code: number, error: string) => {
// 取得に失敗
});
このAPIには内部で頻度制御があるため、頻繁に取得しないでください。より積極的に強制取得したい場合は、
TDRemoteConfigMode.DEBUGで初期化できます。
3. Fetchパラメータのカスタマイズ
Fetchパラメータは、クライアントSDKがAEサーバーに値を要求する際に使用できるパラメータです。Fetchパラメータをカスタマイズし、構成チャンネルの環境パラメータとして追加すると、戦略の設定時にFetchパラメータを使ってターゲットユーザーの環境をカスタマイズできます。
3.1 追加
TDRemoteConfig.setCustomFetchParams({
user_level: 'vip',
region: 'cn'
});
初期化時にSettingsで設定することもできます:
settings.customFetchParams = {
user_level: 'vip',
region: 'cn'
};
3.2 削除
指定したkeyに基づいて削除します:
TDRemoteConfig.removeCustomFetchParam('user_level');
3.3 カスタムバケットID(任意)
A/Bテストのグループ分けを強制的に上書きする場合に使用します:
TDRemoteConfig.setCustomBucketId({
experiment_key: 'bucket_b'
});
このページは役に立ちましたか?

