iOS SDK インテグレーションガイド
このページでは、Rokt Ads の iOS SDK を実装して、チェックアウト時により関連性の高い顧客体験を提供する方法を説明します。SDK を使用すると、設定されたページで発火し、ユーザーとトランザクションデータを Rokt に渡してパーソナライズと測定を行うことにより、これらの体験(確認ページでのオファー表示など)をトリガーおよび追跡できます。
専任のアカウント担当者が、iOS SDK のアカウント設定をサポートします。彼らは、SDK を初期化するために必要な key と secret、および顧客に最も関連性の高い体験を提供するために必要な追加リソースを提供します。
これらの手順を完了するには、開発リソースが必要です。追加のサポートが必要な場合は、Rokt のアカウントマネージャーにお問い合わせください。
1. Rokt SDK を iOS アプリに追加する
SPM または CocoaPods のいずれかを使用して、アプリケーションに Rokt SDK を含めます:
CocoaPods
SDKをCocoaPodsを使用して統合するには、Podfileに以下を指定します:
pod 'mParticle-Apple-SDK', '~> 8.0'
pod 'mParticle-Rokt','~> 8.0'
SPM
Swift Package Managerを使用してSDKを統合するには:
- Xcodeでプロジェクトを開き、「Package Dependencies」タブに移動します。
- パッケージリストの下にある**+**ボタンをクリックします。
- 右上の検索ボックスにリポジトリURL
https://github.com/mParticle/mparticle-apple-sdkを入力し、パッケージリストからmparticle-apple-sdkを選択し、「Dependency Rule」を「Up to Next Major Version」に変更します。 - 右下の「Add Package」ボタンをクリックし、「Package Product」として
mParticle-Apple-SDKを選択します。位置情報追跡サポートを含まないSDKバージョンを使用したい場合は、mParticle-Apple-SDK-NoLocationを選択します。 - Rokt KitリポジトリURL
https://github.com/mparticle-integrations/mparticle-apple-integration-rokt.gitに対してステップ3と4を繰り返します。mParticle-Apple-SDK-NoLocationパッケージプロダクトを選択した場合、import mParticle_Apple_SDK_NoLocationを使用してSDKをインポートする必要があります。import mParticle_Apple_SDKの代わりに。
2. Rokt SDKの初期化
SDKを初期化するには、次の初期化スニペットをAppDelegateファイルに挿入します:
your-keyとyour-secretを、専任のRoktチームから提供されたキーとシークレットに置き換えてください。
- Swift
- Objective-C
import mParticle_Apple_SDK
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// SDKを初期化
let options = MParticleOptions(key: "your-key",
secret: "your-secret")
// データ環境を指定:
// 統合をテスト中の場合は.developmentに設定します。
// 統合が本番データの準備ができている場合は.productionに設定します。
// デフォルトは.autoDetectで、自動的に環境を検出しようとします
options.environment = .development
// 現在のユーザーを識別:
let identifyRequest = MPIdentityApiRequest.withEmptyUser()
// ハッシュされていないメールアドレスを使用している場合は、'email'に設定します。
identifyRequest.email = "j.smith@example.com"
// ユーザーがメールアドレスで識別される場合、追加のユーザー属性を設定します。
options.identifyRequest = identifyRequest
options.onIdentifyComplete = {(result: MPIdentityApiResult?, error: Error?) in
if let user = result?.user {
user.setUserAttribute("example attribute key", value: "example attribute value")
} else {
//失敗を処理 - 以下の「エラーハンドリング」セクションを参照
}
}
MParticle.sharedInstance().start(with: options)
return true
}
#```objective-c
import <mParticle_Apple_SDK/mParticle.h>
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// SDKを初期化する
MParticleOptions *options = [MParticleOptions optionsWithKey:@"your-key"
secret:@"your-secret"];
// データ環境を指定する:
// 統合をテスト中の場合はMPEnvironmentDevelopmentに設定します。
// 統合が本番データの準備ができている場合はMPEnvironmentProductionに設定します。
// デフォルトはMPEnvironmentAutoDetectで、自動的に環境を検出しようとします
options.environment = MPEnvironmentDevelopment;
// 現在のユーザーを識別する:
// ユーザーのメールアドレスがない場合は、null値を渡すことができます
MPIdentityApiRequest *identifyRequest = [MPIdentityApiRequest requestWithEmptyUser];
// ハッシュ化されていないメールアドレスを使用している場合は、'email'に設定します。
identifyRequest.email = @"j.smith@example.com";
options.identifyRequest = identifyRequest;
// ユーザーがメールアドレスで識別されている場合、追加のユーザー属性を設定します。
options.onIdentifyComplete = ^(MPIdentityApiResult *_Nullable apiResult, NSError *_Nullable error) {
if (apiResult) {
[apiResult.user setUserAttribute:@"example attribute key"
value:@"example attribute value"];
} else {
//失敗を処理する - 詳細はhttps://docs.mparticle.com/developers/sdk/ios/idsync/#error-handlingを参照
}
};
[[MParticle sharedInstance] startWithOptions:options];
return YES;
}
2.1 初期化時にユーザーを識別する
SDKが初期化されると、現在のユーザーを識別することができ、収集されたデータが正しくそれらに帰属されるようにし、彼らの行動に基づいて最も関連性の高い広告が表示されるようにします。
SDKの初期化スクリプトには、identifyRequestというオブジェクトが含まれています:
- Swift
- Objective-C
let identifyRequest = MPIdentityApiRequest.withEmptyUser()
identifyRequest.email = "j.smith@example.com"
options.identifyRequest = identifyRequest
MPIdentityApiRequest *identifyRequest = [MPIdentityApiRequest requestWithEmptyUser];
identifyRequest.email = @"j.smith@example.com";
options.identifyRequest = identifyRequest;
2.2 追加のユーザー属性を設定する
初期化スクリプトには、ユーザーがメールアドレスで正常に識別された場合に、追加のユーザー属性を設定するためのコールバック関数が含まれています。:
- Swift
- Objective-C
options.onIdentifyComplete = {(result: MPIdentityApiResult?, error: Error?) in
if let user = result?.user {
user.setUserAttribute("example attribute key", value: "example attribute value")
} else {
//handle failure - see "Error Handling" section below
}
}
options.onIdentifyComplete = ^(MPIdentityApiResult *_Nullable apiResult, NSError *_Nullable error) {
if (apiResult) {
[apiResult.user setUserAttribute:@"example attribute key"
value:@"example attribute value"];
} else {
//handle failure - see https://docs.mparticle.com/developers/sdk/ios/idsync/#error-handling
}
};
3. データが利用可能になったらユーザーを識別する
SDKが初期化された後にユーザーがメールアドレスを提供するたびに(例えば、ログインや購入時)、identify メソッドを呼び出してそのメールアドレスをRoktに渡す必要があります。これにより、データが現在のユーザーに正しく帰属されることが保証されます。
3.1 identifyRequest を作成する
ユーザーを識別するために、まずユーザーのメールアドレスを含む identifyRequest オブジェクトを作成します。
ハッシュ化されていないメールアドレスを提供する場合は、以下を使用します:
- Swift
- Objective-C
let identifyRequest = MPIdentityApiRequest.withEmptyUser()
identifyRequest.email = "j.smith@example.com"
MPIdentityApiRequest *identifyRequest = [MPIdentityApiRequest requestWithEmptyUser];
identifyRequest.email = @"j.smith@example.com";