integrationlatestデータ連携 / iOS
iOS
最新バージョン:v1.0.2
更新日:2026-07-24
リソースのダウンロード:ダウンロード
1. 概要
バージョン6.1から、AEに実験スイート機能が追加されました。AE管理画面で実験を作成し、コントロールグループとテストグループの変数値を設定して、クライアントSDKでAppに取得することで、グループごとに異なるコンテンツをユーザーに表示できます。
このドキュメントでは、クライアントSDKの統合手順を説明します。App側はThinkingData SDKとのやり取りだけを考慮すればよく、AE管理画面のタスクの詳細を気にする必要はありません。
なお、実験SDKは構成センターSDKと組み合わせて使用する必要があります。
2. 統合
2.1 CocoaPodsによる自動統合
- プロジェクトの
Podfileに依存関係を追加します:
platform :ios, '9.0'
use_frameworks!
target 'YourApp' do
pod 'TDExperiment', '1.0.2'
end
- インストールコマンドを実行します:
pod install
インストールが完了したら、.xcworkspaceでプロジェクトを開きます。
2.2 SDKの手動統合
実験SDKには、次のThinkingData SDKが必要です:
| SDK名 | 機能紹介 | バージョン要件 |
|---|---|---|
| ThinkingSDK | データの収集と処理を行います | >= 3.1.6 |
| TDRemoteConfig | AE管理画面の設定情報を取得します | >= 1.3.1 |
- ページ上部のリソースのダウンロードリンクをクリックし、SDKをダウンロードして解凍します
ThinkingSDK.xcframework、ThinkingDataCore.xcframework、TDRemoteConfig.xcframework、TDExperiment.xcframeworkをプロジェクトにドラッグし、Embed & Signにチェックを入れます(またはプロジェクトの静的ライブラリの方針に従って設定します)- Build Settingsで、Framework Search Pathsに上記のxcframeworkのパスが含まれていることを確認します
3. 初期化
実験SDKは分析SDKと組み合わせて使用する必要があります。先にTDAnalyticsの初期化を完了してから、実験SDKを初期化してください。
#import <ThinkingSDK/ThinkingSDK.h>
#import <TDExperiment/TDExperiment.h>
// データ収集SDKを初期化
[TDAnalytics startAnalyticsWithAppId:@"APP_ID" serverUrl:@"https://YOUR_SERVER_URL"];
// 実験SDKを初期化
TDExperimentConfig *config = [[TDExperimentConfig alloc] initWithAppId:@"APP_ID"
serverUrl:@"https://YOUR_SERVER_URL"];
config.automaticExposureTracking = YES;
config.customBucketId = @{ @"bucket_id": @"account_id" };
config.customFetchParams = @{ @"key": @"value" };
TDExperimentTask *startupTask = [[TDExperimentTask alloc] init];
[startupTask addOnSuccessListener:^{
// 実験設定情報の取得に成功
}];
[startupTask addOnFailureListener:^(NSInteger code, NSString *message) {
// 実験設定情報の取得に失敗
}];
config.startupTask = startupTask;
[TDExperiment enableLog:YES];
[TDExperiment startWithConfig:config];
簡易的な起動方法も使用できます:
[TDExperiment startWithAppId:@"APP_ID" serverUrl:@"https://YOUR_SERVER_URL"];
初期化パラメータの説明:
- appId:APP ID
- serverUrl:データの送信先URL
- automaticExposureTracking:デフォルトはYESです。getで実験パラメータを取得するときに、インプレッションイベントを自動的に送信します
- customBucketId:カスタム振り分け主体
- customFetchParams:クライアントの構成チャンネルに設定したカスタムパラメータ
- startupTask:起動時に実験設定を初めて取得する際のコールバックタスク(addOnSuccessListener / addOnFailureListenerで登録)
- enableLog:デバッグログを有効にするかどうか(TDExperiment.enableLogで設定)
4. 使用方法
4.1 実験情報の取得
[TDExperiment getValueAsString:key];
[TDExperiment getValueAsString:key defaultValue:@"default"];
[TDExperiment getValueAsNumber:key];
[TDExperiment getValueAsNumber:key defaultValue:@0];
[TDExperiment getValueAsBoolean:key];
[TDExperiment getValueAsBoolean:key defaultValue:NO];
[TDExperiment getValueAsJson:key];
[TDExperiment getValueAsJson:key defaultValue:@{}];
automaticExposureTrackingがYESの場合、getの際にインプレッションイベントが自動的に送信されます。
4.2 インプレッションイベントの送信
exposureメソッドを呼び出して、インプレッションイベントを手動で送信できます。
[TDExperiment exposure:key];
4.3 すべての実験情報を能動的に取得
[TDExperiment fetch];
[[[TDExperiment fetch]
addOnSuccessListener:^{
// 成功
}]
addOnFailureListener:^(NSInteger code, NSString *message) {
// 失敗
}];
4.4 カスタム振り分け主体
NSDictionary<NSString *, NSString *> *bucketId = @{ @"bucket_id": @"account_id" };
[TDExperiment setCustomBucketId:bucketId];
4.5 カスタムリクエストパラメータ
NSDictionary<NSString *, NSObject *> *params = @{ @"key": @"value" };
[TDExperiment setCustomFetchParams:params];
このページは役に立ちましたか?

