Adjust Criteo 플러그인을 사용하여 Adjust iOS SDK와 Criteo를 연동할 수 있습니다.
환경 설정
Cartfile
에 다음 줄을 추가합니다.
github "adjust/ios_sdk" "criteo"
소스로부터의 설치
다음 방법 중 하나를 수행하여 Criteo 이벤트와 adjust를 통합하세요.
배포 페이지에서 다운로드한 아카이브 내에 있는 plugin/Criteo 폴더를 찾습니다.
ADJCriteo.h
및 ADJCriteo.m
파일을 프로젝트 내 Adjust 폴더에 드래그합니다.
대화창에서 해당 파일을 추가하기 위한 옵션을 선택합니다. 필요한 경우 아이템 복사 체크박스를 선택한 뒤, 라디오 버튼을 선택하여 그룹을 생성 합니다.
Criteo 이벤트 사용하기
환경 설정이 완료되면 Adjust SDK와 Criteo 이벤트 기록을 시작할 수 있습니다.
목록 보기
let event = ADJEvent ( eventToken : "{viewListingEventToken}" )
let productIds = [ "productId1" , "productId2" , "product3" ]
ADJCriteo. injectViewListing ( into : event, productIds : productIds)
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" )
ADJEvent * event = [ADJEvent eventWithEventToken: @"{viewProductEventToken}" ];
[ADJCriteo injectViewProductIntoEvent: event productId: @"productId1" ];
[Adjust trackEvent: event];
Cart
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)
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)
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 )
ADJEvent * event = [ADJEvent eventWithEventToken: @"{userLevelEventToken}" ];
[ADJCriteo injectUserLevelIntoEvent: event uiLevel:1 ];
[Adjust trackEvent: event];
사용자 상태
let event = ADJEvent ( eventToken : "{userStatusEventToken}" )
ADJCriteo. injectUserStatus ( into : event, uiStatus : "uiStatusValue" )
ADJEvent * event = [ADJEvent eventWithEventToken: @"{userStatusEventToken}" ];
[ADJCriteo injectUserStatusIntoEvent: event uiStatus: @"uiStatusValue" ];
[Adjust trackEvent: event];
목적 달성
let event = ADJEvent. eventToken ( "{achievementUnlockedEventToken}" )
ADJCriteo. injectAchievementUnlocked ( into : event, uiAchievement : "uiAchievementValue" )
ADJEvent * event = [ADJEvent eventWithEventToken: @"{achievementUnlockedEventToken}" ];
[ADJCriteo injectAchievementUnlockedIntoEvent: event uiAchievement: @"uiAchievementValue" ];
[Adjust trackEvent: event];
커스텀 이벤트
let event = ADJEvent. eventToken ( "{customEventEventToken}" )
ADJCriteo. injectCustomEvent ( into : event, uiData : "uiDataValue" )
ADJEvent * event = [ADJEvent eventWithEventToken: @"{customEventEventToken}" ];
[ADJCriteo injectCustomEventIntoEvent: event uiData: @"uiDataValue" ];
[Adjust trackEvent: event];
Custom event 2
let event = ADJEvent ( eventToken : "{customEvent2EventToken}"
ADJCriteo. injectCustomEvent2 ( into : event, uiData2 : "uiDataValue2" , uiData3 : 3 )
ADJEvent * event = [ADJEvent eventWithEventToken: @"{customEvent2EventToken}" ];
[ADJCriteo injectCustomEvent2IntoEvent: event uiData2: @"uiDataValue2" uiData3:3 ];
[Adjust trackEvent: event];
해시(Hashed)된 이메일
모든 Criteo 이벤트에 해시된 이메일을 추가할 수 있습니다. 해당 기능 사용을 원하는 경우 injectHashedEmailIntoCriteoEvents
메서드를 호출합니다. SDK는 앱의 라이프사이클 동안 모든 Criteo 이벤트에 해시된 이메일을 전송합니다. 즉, 앱이 다시 시작될 경우 재설정되어야 합니다. 해시된 이메일은 injectHashedEmailIntoCriteoEvents
값을 nil
로 설정하여 삭제할 수 있습니다.
ADJCriteo. injectHashedEmail ( intoCriteoEvents : "8455938a1db5c475a87d76edacb6284e" )
[ADJCriteo injectHashedEmailIntoCriteoEvents: @"8455938a1db5c475a87d76edacb6284e" ];
날짜 검색
모든 Criteo 이벤트에 대해 체크인 및 체크아웃 날짜를 추가할 수 있습니다. 해당 기능 사용을 원하는 경우 injectViewSearchDatesIntoCriteoEvent
메서드를 호출합니다. SDK는 앱의 라이프사이클 동안 모든 Criteo 이벤트 관련 날짜를 전송합니다. 즉, 앱이 다시 시작될 경우 재설정되어야 합니다.
검색 날짜는 injectViewSearchDatesIntoCriteoEvent
값을 nil
로 설정하여 삭제할 수 있습니다.
ADJCriteo. injectViewSearchDates ( intoCriteoEvents : "2015-01-01" , checkoutDate : "2015-01-07" )
[ADJCriteo injectViewSearchDatesIntoCriteoEvents: @"2015-01-01" checkOutDate: @"2015-01-07" ];
파트너 ID
모든 Criteo 이벤트에 파트너 ID를 추가할 수 있습니다. 해당 기능 사용을 원하는 경우 injectPartnerIdIntoCriteoEvents
메서드를 호출합니다. SDK는 앱의 라이프사이클 동안 모든 Criteo 관련 파트너 ID를 전송합니다. 즉, 앱이 다시 시작될 경우 재설정되어야 합니다.
파트너 ID는 injectPartnerIdIntoCriteoEvents
값을 null로 설정하여 삭제할 수 있습니다.
ADJCriteo. injectPartnerId ( intoCriteoEvents : "{criteoPartnerId}"
[ADJCriteo injectPartnerIdIntoCriteoEvents: @"{criteoPartnerId}" ];
딥링크 전송
Criteo 이벤트에 딥링크 정보를 추가할 수 있습니다. 해당 기능 사용을 원하는 경우 이벤트 및 URL과 함께 injectDeeplinkIntoEvent
메서드를 호출합니다.
_ application: UIApplication ? ,
sourceApplication : String ? ,
let event = ADJEvent ( eventToken : "{deeplinkEventToken}" )
ADJCriteo. injectDeeplink ( into : event, url : url)
- ( 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
모든 Criteo 이벤트에 고객 ID를 추가할 수 있습니다. 해당 기능 사용을 원하는 경우 injectCustomerIdIntoCriteoEvents
메서드를 호출합니다. SDK는 앱의 라이프사이클 동안 모든 Criteo 이벤트 관련 고객 ID를 전송합니다. 즉, 앱이 다시 시작될 경우 재설정되어야 합니다.
고객 ID는 injectCustomerIdIntoCriteoEvents
값을 nil로 설정하여 삭제할 수 있습니다.
ADJCriteo. injectCustomerId ( intoCriteoEvents : "{CriteoCustomerId}" )
[ADJCriteo injectCustomerIdIntoCriteoEvents: @"{CriteoCustomerId}" ];
사용자 세그먼트
모든 Criteo 이벤트에 사용자 세그먼트를 추가할 수 있습니다. 해당 기능 사용을 원하는 경우 injectUserSegmentIntoCriteoEvents
메서드를 호출합니다. SDK는 앱의 라이프사이클 동안 모든 Criteo 이벤트 관련 사용자 세그먼트를 전송합니다. 즉, 앱이 다시 시작될 경우 재설정되어야 합니다.
사용자 세그먼트는 injectUserSegmentIntoCriteoEvents
값을 nil로 설정하여 삭제할 수 있습니다.
ADJCriteo. injectUserSegment ( intoCriteoEvents : "{CriteoUserSegment}" )
[ADJCriteo injectUserSegmentIntoCriteoEvents: @"{CriteoUserSegment}" ];