iOS SDK API
SDK インターフェース説明
- MTMAService、SDK のすべてのインターフェースを含む。
- MTMAConfig、アプリケーション設定情報クラス。
- MTMAUserID、ユーザー識別モデル。
- MTMAUserContact、ユーザー連絡先情報モデル。
- MTMACollectControl、データ収集制御モデル。
MA ビジネス機能の起動
サポートバージョン
サポート開始バージョン:5.0.0
インターフェース定義
- + start:(MTMAConfig * )config;
- インターフェース説明:
- EngageLab MA 機能を有効化。
- start インターフェースは他のインターフェースの開始インターフェースであるため、他のインターフェースを呼び出す前に start インターフェースを呼び出す必要がある。
- パラメータ説明
- config 設定クラス
- インターフェース説明:
呼び出し例
MTMAConfig *config = [[MTMAConfig alloc] init];
[MTMAService start:config];
MTMAConfig *config = [[MTMAConfig alloc] init];
[MTMAService start:config];
このコードブロックはフローティングウィンドウ内に表示されます
ユーザー連絡先情報の設定
サポートバージョン
サポート開始バージョン:5.0.0
インターフェース定義
- + (void)setUserContact:(MTMAUserContact * )contact;
- インターフェース説明:
- ユーザー連絡先情報を設定。
- パラメータ説明
- contacts: 複数の連絡先情報を設定。キーは連絡先情報の名前、値は連絡先情報の値。現在、4 種類の連絡先情報をサポート:email、mobile_phone、landline_phone、whatsapp_phone。
- インターフェース説明:
呼び出し例
MTMAUserContact *contact = [[MTMAUserContact alloc] init];
contact.contacts = @{@"仕事用携帯番号":@"13*********"};
contact.completion = ^(NSInteger code, NSString * _Nonnull message) { };
[MTMAService setUserContact:contact];
MTMAUserContact *contact = [[MTMAUserContact alloc] init];
contact.contacts = @{@"仕事用携帯番号":@"13*********"};
contact.completion = ^(NSInteger code, NSString * _Nonnull message) { };
[MTMAService setUserContact:contact];
このコードブロックはフローティングウィンドウ内に表示されます
イベント報告
サポートバージョン
サポート開始バージョン:5.0.0
インターフェース定義
- **+ (void)eventRecord:(MTMAEventObject )event;*
- インターフェース説明:
- イベントを報告。
- パラメータ説明
- イベント報告モデル
- eventName: 報告するイベントの名前
- property: イベント属性。キーは属性名、値は属性値。
- インターフェース説明:
呼び出し例
MTMAEventObject *object = [[MTMAEventObject alloc] init];
object.eventName = @"sndefineevent2";
object.property = @{
@"key1":@"value1",
@"key2":@"value2",
};
[MTMAService eventRecord:object];
MTMAEventObject *object = [[MTMAEventObject alloc] init];
object.eventName = @"sndefineevent2";
object.property = @{
@"key1":@"value1",
@"key2":@"value2",
};
[MTMAService eventRecord:object];
このコードブロックはフローティングウィンドウ内に表示されます
ユーザー識別の設定
サポートバージョン
サポート開始バージョン:5.0.0
インターフェース定義
- + (void)identifyAccount:(MTMAUserID * )userID;
- インターフェース説明:
- ユーザー識別を設定。
- パラメータ説明
- ユーザー識別モデル
- userID: ログイン済みのユーザーの一意の識別を設定。
- anonymousID: ユーザーがログインしていないが、他の識別可能な情報を提供した場合、匿名 ID として設定可能。例:メールアドレスやサードパーティが生成した識別 ID。
- インターフェース説明:
呼び出し例
MTMAUserID *userid = [[MTMAUserID alloc] init];
userid.anonymousID = @"xxx";
userid.userID = @"xxx";
[MTMAService identifyAccount:userid];
MTMAUserID *userid = [[MTMAUserID alloc] init];
userid.anonymousID = @"xxx";
userid.userID = @"xxx";
[MTMAService identifyAccount:userid];
このコードブロックはフローティングウィンドウ内に表示されます
データアップロードの報告間隔の設定
サポートバージョン
サポート開始バージョン:5.0.0
インターフェース定義
- + (void)setReportInterval:(NSInteger)interval;
- インターフェース説明:
- データアップロードの報告間隔を設定。このインターフェースを呼び出さない場合、イベントデータはデフォルトで 10 秒ごとに報告される。
- 報告間隔はメモリにキャッシュされ、アプリケーションの各ライフサイクルで呼び出す必要がある。
- パラメータ説明
- interval 報告間隔(秒単位)
- インターフェース説明:
呼び出し例
[MTMAService setReportInterval:10];
[MTMAService setReportInterval:10];
このコードブロックはフローティングウィンドウ内に表示されます
イベントキャッシュエントリの上限設定
サポートバージョン
サポート開始バージョン:5.0.0
インターフェース定義
- + (void)setMaxEventCacheCount:(NSInteger)count;
- インターフェース説明:
- イベントキャッシュエントリの上限を設定。デフォルトは 50、最大 500 まで設定可能。
- キャッシュ数が超過した場合、すべてのデータが報告される。
- パラメータ説明
- count イベントキャッシュエントリの上限
- インターフェース説明:
呼び出し例
[MTMAService setMaxEventCacheCount:50];
[MTMAService setMaxEventCacheCount:50];
このコードブロックはフローティングウィンドウ内に表示されます
セッションタイムアウト時間の設定
サポートバージョン
サポート開始バージョン:5.0.0
インターフェース定義
- + (void)setNoActiveSessionEndDurationTime:(NSInteger)interval;
- インターフェース説明:
- セッションタイムアウト時間を設定。デフォルトは 30 分。
- アプリがバックグラウンドに切り替わると、セッションタイムアウトタイマーが開始される。タイムアウト時間内にアクティビティがない場合、現在のセッションが終了する。
- パラメータ説明
- interval タイムアウト時間(秒単位)
- インターフェース説明:
呼び出し例
[MTMAService setNoActiveSessionEndDurationTime:50];
[MTMAService setNoActiveSessionEndDurationTime:50];
このコードブロックはフローティングウィンドウ内に表示されます
EUID の取得
サポートバージョン
サポート開始バージョン:5.0.0
インターフェース定義
- + (NSString * )EUID;
- インターフェース説明:
- EngageLab MA の EUID を取得。
- インターフェース説明:
呼び出し例
[MTMAService EUID];
[MTMAService EUID];
このコードブロックはフローティングウィンドウ内に表示されます
UTM 属性の設定
サポートバージョン
サポート開始バージョン:5.0.0
インターフェース定義
- + (void)setUtmProperties:(NSDictionary * )property;
- インターフェース説明:
- UTM 属性は標準イベント属性。開発者がユーザーがどの広告からアプリに遷移したかを識別できる場合、UTM 情報を設定することを推奨。イベント報告時にこのパラメータが送信される。現在設定可能な UTM 属性は以下の通り:
- utm_source 広告キャンペーンのソース
- utm_medium 広告キャンペーンの媒体
- utm_term 広告キャンペーンのキーワード
- utm_content 広告キャンペーンのコンテンツ
- utm_campaign 広告キャンペーンの名前
- utm_id 広告キャンペーンの ID
- UTM 属性は標準イベント属性。開発者がユーザーがどの広告からアプリに遷移したかを識別できる場合、UTM 情報を設定することを推奨。イベント報告時にこのパラメータが送信される。現在設定可能な UTM 属性は以下の通り:
- インターフェース説明:
呼び出し例
[MTMAService setUtmProperties:@{@"utm_source":@"value"}];
[MTMAService setUtmProperties:@{@"utm_source":@"value"}];
このコードブロックはフローティングウィンドウ内に表示されます
ユーザー属性の設定
ユーザー属性の上書きと更新
- + (void)setProperty:(NSDictionary * )userinfo completion:(void (^)(NSInteger code, NSString * message))completion;
- インターフェース説明:
- ユーザー属性の内容はNSDictionaryに格納され、キーはユーザー属性の名前でNSStringである必要があり、値はユーザー属性の内容で、NSString、NSNumber、NSSet、NSArrayなどの型のみをサポートします。
- 現在、NSSetまたはNSArray型の値の要素はNSStringのみをサポートしています。
- 既に存在するユーザー属性がある場合は今回上書きされ、存在しない場合は新規作成されます。例: ユーザーの会員レベル。
- 呼び出し例:
- インターフェース説明:
[MTMAService setProperty:@{@"key":@"value"} completion:^(NSInteger code, NSString * _Nonnull message) {
}];
[MTMAService setProperty:@{@"key":@"value"} completion:^(NSInteger code, NSString * _Nonnull message) {
}];
このコードブロックはフローティングウィンドウ内に表示されます
- + (void)setProperty:(NSString * )key to:(id)value completion:(void (^)(NSInteger code, NSString * message))completion;
- インターフェース説明:
- ユーザーの単一のユーザー属性の内容を設定します。
- ユーザー属性の内容はNSDictionaryに格納され、キーはユーザー属性の名前でNSStringである必要があり、値はユーザー属性の内容で、NSString、NSNumber、NSSet、NSArrayなどの型のみをサポートします。
- 現在、NSSetまたはNSArray型の値の要素はNSStringのみをサポートしています。
- 既に存在するユーザー属性がある場合は今回上書きされ、存在しない場合は新規作成されます。例: ユーザーの会員レベル。
- 呼び出し例:
- インターフェース説明:
[MTMAService setProperty:@"key" to:@"value" completion:^(NSInteger code, NSString * _Nonnull message) {
}];
[MTMAService setProperty:@"key" to:@"value" completion:^(NSInteger code, NSString * _Nonnull message) {
}];
このコードブロックはフローティングウィンドウ内に表示されます
ユーザー属性の増加と更新
- **+ (void)increaseProperty:(NSString )key by:(NSNumber )amount completion:(void (^)(NSInteger code, NSString * message))completion;
- インターフェース説明:
- 数値型のユーザー属性に値を追加し、すべての報告データを累積します。例: 累積消費額。
- このインターフェースはNSNumber型のユーザー属性に対してのみ呼び出すことができ、それ以外の場合は無視されます。このユーザー属性が以前存在しなかった場合、初期値は0と見なされます。
- 呼び出し例:
- インターフェース説明:
[MTMAService increaseProperty:@"key" by:@(2) completion:^(NSInteger code, NSString * _Nonnull message) {
}];
[MTMAService increaseProperty:@"key" by:@(2) completion:^(NSInteger code, NSString * _Nonnull message) {
}];
このコードブロックはフローティングウィンドウ内に表示されます
- **+ (void)increaseProperty:(NSDictionary )userinfo completion:(void (^)(NSInteger code, NSString * message))completion;*
- インターフェース説明:
- 複数の数値型のユーザー属性に値を追加し、すべての報告データを累積します。例: 累積消費額。
- このインターフェースはNSNumber型のユーザー属性に対してのみ呼び出すことができ、それ以外の場合は無視されます。このユーザー属性が以前存在しなかった場合、初期値は0と見なされます。
- 呼び出し例:
- インターフェース説明:
[MTMAService increaseProperty:@{@"key1":@(5),@"key2":@(3)} completion:^(NSInteger code, NSString * _Nonnull message) {
}];
[MTMAService increaseProperty:@{@"key1":@(5),@"key2":@(3)} completion:^(NSInteger code, NSString * _Nonnull message) {
}];
このコードブロックはフローティングウィンドウ内に表示されます
ユーザー属性の追加
- **+ (void)addProperty:(NSString )key by:(NSObject
)content completion:(void (^)(NSInteger code, NSString * message))completion - インターフェース説明:
- NSSetまたはNSArray型のプロパティにいくつかの値を追加します。
- 前述のように、このNSSetまたはNSArrayの要素はNSStringでなければならず、それ以外の場合は無視されます。同時に、追加するユーザー属性が以前存在しなかった場合、空のNSSetまたはNSArrayが初期化されます。
- 呼び出し例:
- インターフェース説明:
[MTMAService addProperty:@"key" by:@[@"value"] completion:^(NSInteger code, NSString * _Nonnull message) {
}];
[MTMAService addProperty:@"key" by:@[@"value"] completion:^(NSInteger code, NSString * _Nonnull message) {
}];
このコードブロックはフローティングウィンドウ内に表示されます
- **+ (void)addProperty:(NSDictionary )userinfo completion:(void (^)(NSInteger, NSString * _Nonnull))completion;*
- インターフェース説明:
- 複数のNSSetまたはNSArray型のプロパティにいくつかの値を追加します。
- 前述のように、このNSSetまたはNSArrayの要素はNSStringでなければならず、それ以外の場合は無視されます。同時に、追加するユーザー属性が以前存在しなかった場合、空のNSSetまたはNSArrayが初期化されます。
- 呼び出し例:
- インターフェース説明:
[MTMAService addProperty:@{@"key1":@[@"value"],@"key2":@[@"value"]} completion:^(NSInteger code, NSString * _Nonnull message) {
}];
[MTMAService addProperty:@{@"key1":@[@"value"],@"key2":@[@"value"]} completion:^(NSInteger code, NSString * _Nonnull message) {
}];
このコードブロックはフローティングウィンドウ内に表示されます
ユーザー属性の削除
- **+ (void)removeProperty:(NSString * )key by:(NSObject
)content completion:(void (^)(NSInteger code, NSString * message))completion;* - インターフェース説明:
- NSSetまたはNSArray型のプロパティからいくつかの値を削除します。
- パラメータcontentはNSSetまたはNSArray型であり、内部の要素はNSStringでなければなりません。
- 呼び出し例:
- インターフェース説明:
[MTMAService removeProperty:@"key" by:@[@"value"] completion:^(NSInteger code, NSString * _Nonnull message) {
}];
[MTMAService removeProperty:@"key" by:@[@"value"] completion:^(NSInteger code, NSString * _Nonnull message) {
}];
このコードブロックはフローティングウィンドウ内に表示されます
ユーザー属性の削除
対応バージョン
対応開始バージョン: 5.0.0
インターフェース定義
- + (void)deleteProperty:(NSString * )key completion:(void (^)(NSInteger code, NSString * message))completion;
- インターフェース説明:
- 特定のユーザー属性のすべての内容を削除します。
- このユーザー属性が以前存在しなかった場合は、直接無視されます。
- インターフェース説明:
呼び出し例
[MTMAService deleteProperty:@"key" completion:^(NSInteger code, NSString * _Nonnull message) {
}];
[MTMAService deleteProperty:@"key" completion:^(NSInteger code, NSString * _Nonnull message) {
}];
このコードブロックはフローティングウィンドウ内に表示されます
データ収集制御
対応バージョン
対応開始バージョン: 5.0.0
インターフェース定義
- **+ (void)setCollectControl:(MTMACollectControl )control;*
- インターフェース説明:
- MTMACollectControlクラス内のデータ項目を収集するかどうかを制御します。
- インターフェース説明:
呼び出し例
MTMACollectControl *collectControl = [[MTMACollectControl alloc] init];
collectControl.idfa = YES;
collectControl.idfv = YES;
collectControl.carrier = YES;
[MTMAService setCollectControl:collectControl];
MTMACollectControl *collectControl = [[MTMACollectControl alloc] init];
collectControl.idfa = YES;
collectControl.idfv = YES;
collectControl.carrier = YES;
[MTMAService setCollectControl:collectControl];
このコードブロックはフローティングウィンドウ内に表示されます
MTMAConfigクラス
アプリケーション設定情報クラス。以下はプロパティの説明です:
パラメータ名 | パラメータ型 | パラメータ説明 |
---|---|---|
userID | MTMAUserID | ユーザー識別モデル。このプロパティを設定すると、初期化時にユーザー識別が設定されます。 |
completion | (^)(NSInteger code, NSString * message) | リクエスト結果のコールバック。code: 0は成功を意味します。 |
MTMAUserIDクラス
ユーザー識別モデルクラス。以下はプロパティの説明です:
パラメータ名 | パラメータ型 | パラメータ説明 |
---|---|---|
userID | NSString | ログインしたユーザーの一意の識別をここに設定します。 |
anonymousID | NSString | ユーザーがログインしていないが他の識別可能な情報が提供されている場合、匿名IDとして設定できます。例: メールアドレスやサードパーティによって生成された識別ID。 |
completion | (^)(NSInteger code, NSString * message) | リクエスト結果のコールバック。code: 0は成功を意味します。 |
MTMACollectControlクラス
ユーザーデータ収集制御モデルクラス。以下はプロパティの説明です:
パラメータ名 | パラメータ型 | パラメータ説明 |
---|---|---|
idfa | BOOL | idfa情報を収集するかどうか。NOに設定するとidfa情報を収集しません。デフォルトはNOです。 |
idfv | BOOL | idfv情報を収集するかどうか。NOに設定するとidfv情報を収集しません。デフォルトはNOです。 |
carrier | BOOL | キャリア情報を収集するかどうか。NOに設定するとキャリア情報を収集しません。デフォルトはYESです。 |
MTMAUserContactクラス
ユーザーチャンネルモデルクラス。以下はプロパティの説明です:
設定されていない、またはnilに設定されている場合、変更がないと見なされます。空文字列 "" に設定されている場合、連絡先情報がクリアされたと見なされます。
パラメータ名 | パラメータ型 | パラメータ説明 |
---|---|---|
contacts | NSDictionary | 連絡先情報の辞書。4種類の連絡先情報をサポートします: email、mobile_phone、landline_phone、whatsapp_phone。 |
completion | (^)(NSInteger code, NSString * message) | リクエスト結果のコールバック。code: 0は成功を意味します。 |
MTMAEventObjectクラス
カスタムイベントオブジェクトクラス。以下はプロパティの説明です:
パラメータ名 | パラメータ型 | パラメータ説明 |
---|---|---|
eventName | NSString | イベントID。必須であり、空であってはなりません。 |
property | NSDictionary<NSString *, id> | カスタムプロパティ(500以下)。キーはNSStringであり、数字、文字、アンダースコアのみを含むことができます。値はNSString/NSNumberである必要があります。 |