メインコンテンツまでスキップ

macOS

最終更新 2026/10/03
ヒント

接続する前に、接続前の準備をお読みください。

macOS SDKの最小システムバージョンはOSX 10.11です

最新バージョン: v3.0.4

更新日: 2024-08-01

リソースのダウンロード: ソースコード

Betaバージョン: v3.0.5-beta.1

注意

iOS SDKはv3.0.0からmacOSプラットフォームに対応しています

1. SDKの統合​

CocoaPodsでSDKをインストールする

1. Podfileを作成して編集します(すでにある場合は直接編集します):

Podfileを作成します。プロジェクト(.xcodeproj)ファイルと同じディレクトリで、コマンドラインから次のコマンドを実行します:

pod init

Podfileを次のように編集します:

platform :osx, '10.10'
target 'YourProjectTarget' do
pod 'ThinkingSDK'
end

2. インストールコマンドを実行します

pod install

3. インポートに成功したら、プロジェクトを起動します

コマンドの実行に成功すると.xcworkspaceファイルが生成されます。これはSDKのインポートに成功したことを示します。.xcworkspaceファイルを開いてプロジェクトを起動します(注意:このとき.xcodeprojファイルを同時に開くことはできません)

2. 初期化​

メインスレッドで初期化を行います。サンプルコードは次のとおりです:

#import <ThinkingSDK/ThinkingSDK.h>

// SDK needs to be initialized on the main thread

NSString *appid = @"APPID";
NSString *url = @"SERVER_URL";

// the first way
[TDAnalytics startAnalyticsWithAppId:appid serverUrl:url];

// the second way
TDConfig *config = [[TDConfig alloc] init];
config.appid = appid;
config.serverUrl = url;
[TDAnalytics startAnalyticsWithConfig:config];

パラメータの説明:

  • APPID: プロジェクトのAPPIDです。AE管理画面の「プロジェクト管理」ページで取得できます

  • SERVER_URL: データの送信先URL

    • クラウドサービスをご利用の場合は、次を入力します: https://global-receiver-ta.thinkingdata.cn
    • プライベートデプロイ版をご利用の場合は、データ収集アドレスにドメインをバインドし、HTTPS証明書を設定してください:https://データ収集アドレスにバインドしたドメイン

3. よく使う機能​

よく使う機能を使用する前に、まずユーザー識別ルールを確認することをお勧めします。SDKはデフォルトで乱数を生成してゲストIDとし、ゲストIDをローカルに永続的に保存します。ユーザーがログインするまでは、ゲストIDが識別IDとして使われます。注意:ゲストIDは、ユーザーがAppを再インストールしたり、デバイスを変更したりすると変わります。

3.1 アカウントIDの設定​

ユーザーがログインする際にlogin:を呼び出してユーザーのアカウントIDを設定できます。AEプラットフォームはアカウントIDを識別IDとして使用し、設定したアカウントIDはlogoutを呼び出すまで保持されます。login:を複数回呼び出すと、以前のアカウントIDが上書きされます。

// ユーザーのログイン時の一意の識別子。このデータは送信データの#account_idに対応し、この場合#account_idの値はTDになります
[TDAnalytics login:@"TD"];

このメソッドはログインイベントを送信しません

3.2 共通イベントプロパティの設定​

共通イベントプロパティとは、すべてのイベントに付与されるプロパティのことです。setSuperPropertiesを呼び出して共通イベントプロパティを設定できます。イベントを送信する前に、共通イベントプロパティを設定しておくことを推奨します。ユーザーの会員レベルや流入チャネルなどの重要なプロパティは、すべてのイベントに設定する必要があります。その場合は、これらのプロパティを共通イベントプロパティとして設定できます。

NSDictionary *superProperties = @{
@"channel": @"ta",
@"age": @1,
@"isSuccess": @YES,
@"birthday": [NSDate date],
@"object": @{
@"key":@"value"
},
@"object_arr":@[
@{
@"key":@"value"
}
],
@"arr": @[@"value"],
};
[TDAnalytics setSuperProperties:superProperties];

共通イベントプロパティはキャッシュに保存されるため、Appを起動するたびに呼び出す必要はありません。setSuperProperties:を呼び出して、以前に設定済みの共通イベントプロパティを設定した場合は、以前のプロパティが上書きされます。

  • イベントのプロパティはNSDictionaryオブジェクトで、各要素が1つのプロパティを表します。
  • Keyはプロパティの名前で、文字列型です。英字で始まり、数字、英字、アンダースコア"_"のみを含めることができます。最大長は50文字です。英字の大文字と小文字は区別されず、AEではすべて小文字に変換されます
  • Valueはプロパティの値で、文字列、数値、ブール値、時間、オブジェクト、オブジェクトグループ、配列に対応しています
  • ブール型のプロパティを送信する場合は、@YESと@NO、または[NSNumber numberWithBool:YES]と[NSNumber numberWithBool:NO]で値を代入してください。@true、@false、@TRUE、@FALSEでブール型のデータを代入することはできません。

イベントプロパティとユーザープロパティの要件は、共通イベントプロパティと同じです

3.3 イベントの送信​

trackを呼び出してイベントを送信できます。事前に整理したトラッキングドキュメントに従って、イベントのプロパティと送信条件を設定することをお勧めします。ここでは、ユーザーが商品を購入する場合を例にします:

// 商品購入イベントを送信
NSDictionary *eventProperties = @{@"product_name": @"book"};
[TDAnalytics track:@"product_buy" properties:eventProperties];

イベント名は文字列型で、英字で始まり、数字、英字、アンダースコア"_"を含めることができます。最大長は50文字です。

3.4 ユーザープロパティの設定​

一般的なユーザープロパティは、userSet:を呼び出して設定できます。このインターフェースで送信したプロパティは、既存のプロパティ値を上書きします。そのユーザープロパティが以前に存在しない場合は新しく作成され、タイプは渡されたプロパティのタイプと同じになります。ここでは、ユーザー名の設定を例にします:

// "username" is "ThinkingData"
[TDAnalytics userSet:@{@"username": @"ThinkingData"}];
// "username" is "TA"
[TDAnalytics userSet:@{@"username": @"TA"}];

4. ベストプラクティス​

次のサンプルコードには、上記のすべての操作が含まれています。次の手順で使用することをお勧めします:

if (プライバシーポリシーに同意済み) {
// enable log
[TDAnalytics enableLog:NO];

// SDK needs to be initialized on the main thread
NSString *appid = @"APPID";
NSString *url = @"SERVER_URL";
TDConfig *config = [[TDConfig alloc] init];
config.appid = appid;
config.serverUrl = url;
[TDAnalytics startAnalyticsWithConfig:config];

[TDAnalytics login:@"TD"];

NSDictionary *superProperties = @{
@"channel": @"ta",
@"age": @1,
@"isSuccess": @YES,
@"birthday": [NSDate date],
@"object": @{
@"key":@"value"
},
@"object_arr":@[
@{
@"key":@"value"
}
],
@"arr": @[@"value"],
};
[TDAnalytics setSuperProperties:superProperties];

NSDictionary *eventProperties = @{@"product_name": @"book"};
[TDAnalytics track:@"product_buy" properties:eventProperties];

// "username" is "ThinkingData"
[TDAnalytics userSet:@{@"username": @"ThinkingData"}];
}
このページは役に立ちましたか?