コンテンツにスキップ

SDK 初期化

基本設定

最初に表示されるビュー NSViewController の viewDidLoad メソッドや NSWindowController の windowDidLoad メソッドは、AppDelegate の applicationDidFinishLaunching よりも先に呼び出されるため、最初のビューのライフサイクル収集が異常にならないよう、main.m ファイルで SDK の初期化を行うことを推奨します。

// main.m ファイル
#import "FTMacOSSDK.h"

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // ローカル環境 / Datakit 経由のデプロイ
        FTSDKConfig *config = [[FTSDKConfig alloc] initWithDatakitUrl:datakitUrl];
        // パブリック DataWay 経由のデプロイ
        // FTSDKConfig *config = [[FTSDKConfig alloc] initWithDatawayUrl:datawayUrl clientToken:clientToken];
        config.enableSDKDebugLog = YES;
        [FTSDKAgent startWithConfigOptions:config];
    }
    return NSApplicationMain(argc, argv);
}

main.swift ファイルを作成し、AppDelegate.swift から @main または @NSApplicationMain を削除します。

import Cocoa
import FTMacOSSDK

let delegate = AppDelegate()
NSApplication.shared.delegate = delegate

let config = FTSDKConfig(datakitUrl: datakitUrl)
// パブリック DataWay 経由のデプロイ
// let config = FTSDKConfig(datawayUrl: datawayUrl, clientToken: clientToken)
config.enableSDKDebugLog = true
FTSDKAgent.start(withConfigOptions: config)

_ = NSApplicationMain(CommandLine.argc, CommandLine.unsafeArgv)
プロパティ 型 必須 説明
datakitUrl NSString はい Datakit アクセスアドレス。例:http://10.0.0.1:9529、デフォルトポートは 9529 です。SDK をインストールするデバイスからこのアドレスにアクセスできる必要があります。注意:datakit と dataway の設定はどちらか一方を選択してください
datawayUrl NSString はい パブリック DataWay アクセスアドレス。例:http://10.0.0.1:9528、デフォルトポートは 9528 です。SDK をインストールするデバイスからこのアドレスにアクセスできる必要があります。注意:datakit と dataway の設定はどちらか一方を選択してください
clientToken NSString はい 認証用 token です。datawayUrl と併用する必要があります
enableSDKDebugLog BOOL いいえ ログ出力を有効にするかどうかを設定します。デフォルトは NO です
env NSString いいえ 収集環境を設定します。デフォルトは prod です。カスタム設定も可能で、提供されている FTEnv 列挙型を使用して -setEnvWithType: メソッドで設定することもできます
service NSString いいえ 所属する業務またはサービスの名前を設定します。Log および RUM の service フィールドデータに影響します。デフォルトは df_rum_macos です
globalContext NSDictionary いいえ カスタムタグを追加します。追加ルールについては カスタムタグの使用 を参照してください

ユーザーのバインドとログアウト

使用方法

/// ユーザー情報をバインドします
///
/// - Parameters:
///   - Id: ユーザーID
///   - userName: ユーザー名(オプション)
///   - userEmail: ユーザーメールアドレス(オプション)
///   - extra: ユーザーの追加情報(オプション)
- (void)bindUserWithUserID:(NSString *)Id userName:(nullable NSString *)userName userEmail:(nullable NSString *)userEmail extra:(nullable NSDictionary *)extra;

/// 現在のユーザーをログアウトします
- (void)unbindUser;
/// ユーザー情報をバインドします
///
/// - Parameters:
///   - Id: ユーザーID
///   - userName: ユーザー名(オプション)
///   - userEmail: ユーザーメールアドレス(オプション)
///   - extra: ユーザーの追加情報(オプション)
open func bindUser(withUserID Id: String, userName: String?, userEmail: String?, extra: [AnyHashable : Any]?)

/// 現在のユーザーをログアウトします
open func unbindUser()

コード例

[[FTSDKAgent sharedInstance] bindUserWithUserID:USERID];
// または
[[FTSDKAgent sharedInstance] bindUserWithUserID:USERID userName:USERNAME userEmail:USEREMAIL];
// または
[[FTSDKAgent sharedInstance] bindUserWithUserID:USERID userName:USERNAME userEmail:USEREMAIL extra:@{EXTRA_KEY:EXTRA_VALUE}];

[[FTSDKAgent sharedInstance] unbindUser];
FTSDKAgent.sharedInstance().bindUser(withUserID: USERID)
// または
FTSDKAgent.sharedInstance().bindUser(withUserID: USERID, userName: USERNAME, userEmail: USEREMAIL)
// または
FTSDKAgent.sharedInstance().bindUser(withUserID: USERID, userName: USERNAME, userEmail: USEREMAIL, extra: [EXTRA_KEY: EXTRA_VALUE])

FTSDKAgent.sharedInstance().unbindUser()

SDK の終了

FTSDKAgent を使用して SDK を終了します。

使用方法

/// SDK 内で動作しているオブジェクトを終了します
- (void)shutDown;
/// SDK 内で動作しているオブジェクトを終了します
func shutDown()

コード例

// SDK の設定を動的に変更する場合は、誤ったデータの生成を防ぐために先に終了する必要があります
[[FTSDKAgent sharedInstance] shutDown];
// SDK の設定を動的に変更する場合は、誤ったデータの生成を防ぐために先に終了する必要があります
FTSDKAgent.sharedInstance().shutDown()

フィードバック

このページは役に立ちましたか?