Adjust iOS SDKとCriteoイベントを連携するには、Adjust Criteoプラグインを使用します。
環境を設定する
以下をPodfile
ファイルに追加します:
pod 'Adjust/Criteo'
以下をCartfile
ファイルに追加します:
github "adjust/ios_sdk" "criteo"
ソースからインストールする
以下の手順に従って、AdjustとCriteoイベントを連携することもできます。
- リリースページからダウンロードしたアーカイブ内で、plugin/Criteoフォルダを確認します。
ADJCriteo.h
およびADJCriteo.m
ファイルをプロジェクト内のAdjustフォルダにドラッグします。- [Choose options for adding these files](ファイル追加のオプションを選択)ダイアログで、 [Copy items if needed](必要に応じて項目をコピー) チェックボックスにチェックを入れ、 [Create groups](グループを作成) のラジオボタンを選択します。
Criteoイベントを操作する
環境を設定したら、Adjust SDKを使用してCriteoイベントの記録を開始できます。
リストの閲覧
let event = ADJEvent(eventToken: "{viewListingEventToken}")let productIds = ["productId1", "productId2", "product3"]ADJCriteo.injectViewListing(into: event, productIds: productIds)Adjust.trackEvent(event)
#import "ADJCriteo.h"
ADJEvent *event = [ADJEvent eventWithEventToken:@"{viewListingEventToken}"];NSArray *productIds = @[@"productId1", @"productId2", @"product3"];[ADJCriteo injectViewListingIntoEvent:event productIds:productIds];[Adjust trackEvent:event];
商品の閲覧
let event = ADJEvent(eventToken: "{viewProductEventToken}")ADJCriteo.injectViewProduct(into: event, productId: "productId1")Adjust.trackEvent(event)
#import "ADJCriteo.h"
ADJEvent *event = [ADJEvent eventWithEventToken:@"{viewProductEventToken}"];[ADJCriteo injectViewProductIntoEvent:event productId:@"productId1"];[Adjust trackEvent:event];
カート
let event = ADJEvent(eventToken: "{cartEventToken}")
let product1 = ADJCriteoProduct(id: "productId1", price: 100.0, quantity: 1)let product2 = ADJCriteoProduct(id: "productId2", price: 77.7, quantity: 3)let product3 = ADJCriteoProduct(id: "productId3", price: 50, quantity: 2)let products = [product1, product2, product3]
ADJCriteo.injectCart(into: event, products: products)
Adjust.trackEvent(event)
#import "ADJCriteo.h"
ADJEvent *event = [ADJEvent eventWithEventToken:@"{cartEventToken}"];
ADJCriteoProduct *product1 = [ADJCriteoProduct productWithId:@"productId1" price:100.0 quantity:1];ADJCriteoProduct *product2 = [ADJCriteoProduct productWithId:@"productId2" price:77.7 quantity:3];ADJCriteoProduct *product3 = [ADJCriteoProduct productWithId:@"productId3" price:50 quantity:2];NSArray *products = @[product1, product2, product3];
[ADJCriteo injectCartIntoEvent:event products:products];
[Adjust trackEvent:event];
トランザクション確認済み
let event = ADJEvent(eventToken: "{transactionConfirmedEventToken}")
let product1 = ADJCriteoProduct(id: "productId1", price: 100.0, quantity: 1)let product2 = ADJCriteoProduct(id: "productId2", price: 77.7, quantity: 3)let product3 = ADJCriteoProduct(id: "productId3", price: 50, quantity: 2)let products = [product1, product2, product3]
ADJCriteo.injectTransactionConfirmed(into: event, products: products)
Adjust.trackEvent(event)
#import "ADJCriteo.h"
ADJEvent *event = [ADJEvent eventWithEventToken:@"{transactionConfirmedEventToken}"];
ADJCriteoProduct *product1 = [ADJCriteoProduct productWithId:@"productId1" price:100.0 quantity:1];ADJCriteoProduct *product2 = [ADJCriteoProduct productWithId:@"productId2" price:77.7 quantity:3];ADJCriteoProduct *product3 = [ADJCriteoProduct productWithId:@"productId3" price:50 quantity:2];NSArray *products = @[product1, product2, product3];
[ADJCriteo injectTransactionConfirmedIntoEvent:event products:products transactionId:@"transactionId1" newCustomer:@"newCustomerId"];
[Adjust trackEvent:event];
ユーザーレベル
let event = ADJEvent(eventToken: "{userLevelEventToken}")
ADJCriteo.injectUserLevel(into: event, uiLevel: 1)
Adjust.trackEvent(event)
#import "ADJCriteo.h"
ADJEvent *event = [ADJEvent eventWithEventToken:@"{userLevelEventToken}"];
[ADJCriteo injectUserLevelIntoEvent:event uiLevel:1];
[Adjust trackEvent:event];
ユーザーステータス
let event = ADJEvent(eventToken: "{userStatusEventToken}")
ADJCriteo.injectUserStatus(into: event, uiStatus: "uiStatusValue")
Adjust.trackEvent(event)
#import "ADJCriteo.h"
ADJEvent *event = [ADJEvent eventWithEventToken:@"{userStatusEventToken}"];
[ADJCriteo injectUserStatusIntoEvent:event uiStatus:@"uiStatusValue"];
[Adjust trackEvent:event];
Achievement Unlocked
let event = ADJEvent.eventToken("{achievementUnlockedEventToken}")
ADJCriteo.injectAchievementUnlocked(into: event, uiAchievement: "uiAchievementValue")
Adjust.trackEvent(event)
#import "ADJCriteo.h"
ADJEvent *event = [ADJEvent eventWithEventToken:@"{achievementUnlockedEventToken}"];
[ADJCriteo injectAchievementUnlockedIntoEvent:event uiAchievement:@"uiAchievementValue"];
[Adjust trackEvent:event];
カスタムイベント
let event = ADJEvent.eventToken("{customEventEventToken}")
ADJCriteo.injectCustomEvent(into: event, uiData: "uiDataValue")
Adjust.trackEvent(event)
#import "ADJCriteo.h"
ADJEvent *event = [ADJEvent eventWithEventToken:@"{customEventEventToken}"];
[ADJCriteo injectCustomEventIntoEvent:event uiData:@"uiDataValue"];
[Adjust trackEvent:event];
カスタムイベント2
let event = ADJEvent(eventToken: "{customEvent2EventToken}"
ADJCriteo.injectCustomEvent2(into: event, uiData2: "uiDataValue2", uiData3: 3)
Adjust.trackEvent(event)
#import "ADJCriteo.h"
ADJEvent *event = [ADJEvent eventWithEventToken:@"{customEvent2EventToken}"];
[ADJCriteo injectCustomEvent2IntoEvent:event uiData2:@"uiDataValue2" uiData3:3];
[Adjust trackEvent:event];
ハッシュ化されたメール
ハッシュ化されたメールを各Criteoイベントに添付できます。これを行うには、injectHashedEmailIntoCriteoEvents
メソッドを呼び出します。SDKは、アプリのライフサイクルを通して、ハッシュ化されたメールを各Criteoイベントと共に送信します。つまり、アプリを再起動したときは、再度設定する必要があります。ハッシュ化されたメールを削除するには、injectHashedEmailIntoCriteoEvents
値をnil
に設定します。
ADJCriteo.injectHashedEmail(intoCriteoEvents: "8455938a1db5c475a87d76edacb6284e")
#import "ADJCriteo.h"
[ADJCriteo injectHashedEmailIntoCriteoEvents:@"8455938a1db5c475a87d76edacb6284e"];
日付を検索する
チェックインとチェックアウトの日付を各Criteoイベントに付与できます。これを行うには、injectViewSearchDatesIntoCriteoEvent
メソッドを呼び出します。SDKは、アプリのライフサイクルを通して、日付を各Criteoイベントと共に送信します。つまり、アプリを再起動したときは、再度設定する必要があります。
検索日を削除するには、injectViewSearchDatesIntoCriteoEvent
値をnil
に設定します。
ADJCriteo.injectViewSearchDates(intoCriteoEvents: "2015-01-01", checkoutDate: "2015-01-07")
#import "ADJCriteo.h"
[ADJCriteo injectViewSearchDatesIntoCriteoEvents:@"2015-01-01" checkOutDate:@"2015-01-07"];
パートナーID
パートナーIDを各Criteoイベントに付与できます。これを行うには、injectPartnerIdIntoCriteoEvents
メソッドを呼び出します。SDKは、アプリのライフサイクルを通して、パートナーIDを各Criteoイベントと共に送信します。つまり、アプリを再起動したときは、再度設定する必要があります。
パートナーIDを削除するには、injectPartnerIdIntoCriteoEvents
値をnullに設定します。
ADJCriteo.injectPartnerId(intoCriteoEvents: "{criteoPartnerId}"
#import "ADJCriteo.h"
[ADJCriteo injectPartnerIdIntoCriteoEvents:@"{criteoPartnerId}"];
ディープリンクを送信する
ディープリンク情報をCriteoイベントに追加できます。これを行うには、イベントとURLを指定してinjectDeeplinkIntoEvent
メソッドを呼び出します。
func application( _ application: UIApplication?, open url: URL?, sourceApplication: String?, annotation: Any?) -> Bool { let event = ADJEvent(eventToken: "{deeplinkEventToken}")
ADJCriteo.injectDeeplink(into: event, url: url)
Adjust.trackEvent(event)
//...}
#import "ADJCriteo.h"
- (BOOL) application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{ ADJEvent *event = [ADJEvent eventWithEventToken:@"{deeplinkEventToken}"];
[ADJCriteo injectDeeplinkIntoEvent:event url:url];
[Adjust trackEvent:event];
//...}
カスタマーID
顧客IDを各Criteoイベントに付与できます。これを行うには、injectCustomerIdIntoCriteoEvents
メソッドを呼び出します。SDKは、アプリのライフサイクルを通して、顧客IDを各Criteoイベントと共に送信します。つまり、アプリを再起動したときは、再度設定する必要があります。
顧客IDを削除するには、injectCustomerIdIntoCriteoEvents
値をnilに設定します。
ADJCriteo.injectCustomerId(intoCriteoEvents: "{CriteoCustomerId}")
#import "ADJCriteo.h"
[ADJCriteo injectCustomerIdIntoCriteoEvents:@"{CriteoCustomerId}"];
ユーザーセグメント
ユーザーセグメントを各Criteoイベントに付与できます。これを行うには、injectUserSegmentIntoCriteoEvents
メソッドを呼び出します。SDKは、アプリのライフサイクルを通して、ユーザーセグメントを各Criteoイベントと共に送信します。つまり、アプリを再起動したときは、再度設定する必要があります。
ユーザーセグメントを削除するには、injectUserSegmentIntoCriteoEvents
値をnilに設定します。
ADJCriteo.injectUserSegment(intoCriteoEvents: "{CriteoUserSegment}")
#import "ADJCriteo.h"
[ADJCriteo injectUserSegmentIntoCriteoEvents:@"{CriteoUserSegment}"];