e-Commerce : 이커머스
이커머스 앱에서 측정을 권장하는 인앱 이벤트 API와 적용 예시를 안내합니다.
Last updated
이커머스 앱에서 측정을 권장하는 인앱 이벤트 API와 적용 예시를 안내합니다.
Last updated
속성 중 Key 이름은 가이드에 나와있는 Key 이름을 그대로 사용 해 주세요. (임의로 변경시 대시보드에서 데이터 확인이 어렵습니다. > product_id , product_name 등)
상품 상세 화면에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
product_id
2007289429
string
상품 고유코드
product_name
플랩 더블 버튼 트렌치코트
string
상품명
category_id_a
00100
string
대 카테고리 코드
category_name_a
여성패션
string
대 카테고리 명칭
category_id_b
2984
string
중 카테고리 코드
category_name_b
트렌치코드
string
중 카테고리 명칭
brand_name
STUDIO TOMBOY
string
브랜드 명칭
Map<String, Object> pageMap = new HashMap<>();
pageMap.put("event", "w_view_product");
Map<String, Object> productMap = new HashMap<>();
productMap.put("product_id", "2007289429");
productMap.put("product_name", "플랩 더블 버튼 트렌치코트");
productMap.put("category_id_a", "00100");
productMap.put("category_name_a", "여성패션");
productMap.put("category_id_b", "2984");
productMap.put("category_name_b", "트렌치코드");
productMap.put("brand_name", "STUDIO TOMBOY");
pageMap.put("product", productMap);
DOT.logScreen(pageMap);
val pageMap = mutableMapOf<String,Any>()
pageMap["event"] = "w_view_product"
val productMap = mutableMapOf<String,Any>()
productMap["product_id"] = "2007289429"
productMap["product_name"] = "플랩 더블 버튼 트렌치코트"
productMap["category_id_a"] = "00100"
productMap["category_name_a"] = "여성패션"
productMap["category_id_b"] = "2984"
productMap["category_name_b"] = "트렌치코드"
productMap["brand_name"] = "STUDIO TOMBOY"
pageMap["product"] = productMap
DOT.logScreen(pageMap)
let screen = NSMutableDictionary()
screen["event"] = "w_view_product"
var product : [String: Any] = [:]
product["product_id"] = "2007289429"
product["product_name"] = "플랩 더블 버튼 트렌치코트"
product["category_id_a"] = "00100"
product["category_name_a"] = "여성패션"
product["category_id_b"] = "2984"
product["category_name_b"] = "트렌치코드"
product["brand_name"] = "STUDIO TOMBOY"
screen["product"] = product
DOT.logScreen(screen)
NSMutableDictionary *screen = [[NSMutableDictionary alloc] init];
[screen setValue:@"w_view_product" forKey:@"event"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"2007289429" forKey:@"product_id"];
[product setValue:@"플랩 더블 버튼 트렌치코트" forKey:@"product_name"];
[product setValue:@"00100" forKey:@"category_id_a"];
[product setValue:@"여성패션" forKey:@"category_name_a"];
[product setValue:@"2984" forKey:@"category_id_b"];
[product setValue:@"트렌치코드" forKey:@"category_name_b"];
[product setValue:@"STUDIO TOMBOY" forKey:@"brand_name"];
[screen setValue:product forKey:@"product"];
[DOT logScreen:screen];
var screen = new Object();
screen["event"] = "w_view_product";
var product = new Object();
product["product_id"] = "2007289429";
product["product_name"] = "플랩 더블 버튼 트렌치코트";
product["category_id_a"] = "00100";
product["category_name_a"] = "여성패션";
product["category_id_b"] = "2984";
product["category_name_b"] = "트렌치코드";
product["brand_name"] = "STUDIO TOMBOY";
screen["product"] = product;
DOT.logScreen(screen);
var screen = new Object();
screen["event"] = "w_view_product";
var product = new Object();
product["product_id"] = "2007289429";
product["product_name"] = "플랩 더블 버튼 트렌치코트";
product["category_id_a"] = "00100";
product["category_name_a"] = "여성패션";
product["category_id_b"] = "2984";
product["category_name_b"] = "트렌치코드";
product["brand_name"] = "STUDIO TOMBOY";
screen["product"] = product;
WDOT.onStartPage(screen);
// .dart 에서 호출 할 때
Map screen = {};
screen["event"] = "w_view_product";
Map product = {};
product["product_id"] = "2007289429";
product["product_name"] = "플랩 더블 버튼 트렌치코트";
product["category_id_a"] = "00100";
product["category_name_a"] = "여성패션";
product["category_id_b"] = "2984";
product["category_name_b"] = "트렌치코드";
product["brand_name"] = "STUDIO TOMBOY";
screen["product"] = product;
DOT.logScreen(screen);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logScreen",
data: {
event : "w_view_product",
product_id : "2007289429",
product_name : "플랩 더블 버튼 트렌치코트",
category_id_a : "00100",
category_name_a : "여성패션",
category_id_b : "2984",
category_name_b : "트렌치코드",
brand_name : "STUDIO TOMBOY"
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge != null &&
(NativeModules.DotReactBridge.onStartPage(),
NativeModules.DotReactBridge.logScreen(
JSON.stringify({
event: 'w_view_product',
product: {
product_id: '2007289429',
product_name: '플랩 더블 버튼 트렌치코트',
category_id_a: '00100',
category_name_a: '여성패션',
category_id_b: '2984',
category_name_b: '트렌치코드',
brand_name: 'STUDIO TOMBOY',
},
}),
));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logScreen",
data : {
event : "w_view_product",
product : {
product_id : "2007289429",
product_name : "플랩 더블 버튼 트렌치코트",
category_id_a : "00100",
category_name_a : "여성패션",
category_id_b : "2984",
category_name_b : "트렌치코드",
brand_name : "STUDIO TOMBOY"
}
}
}));
Dictionary<string, object> page = new Dictionary<string, object>();
page.Add("event", "w_view_product");
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("product_id", "2007289429");
product.Add("product_name", "플랩 더블 버튼 트렌치코트");
product.Add("category_id_a", "00100");
product.Add("category_name_a", "여성패션");
product.Add("category_id_b", "2984");
product.Add("category_name_b", "트렌치코드");
product.Add("brand_name", "STUDIO TOMBOY");
page.Add("product", product);
DOT.logScreen(page);
상품 리스트 상세 화면에 아래 코드를 추가합니다.
Map<String, Object> eventMap = new HashMap<>();
pageMap.put("event", "w_view_product_list");
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
pageMap["event"] = "w_view_product_list"
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
screen["event"] = "w_view_product_list"
DOT.logEvent(event)
NSMutableDictionary *event= [[NSMutableDictionary alloc] init];
[event setValue:@"w_view_product_list" forKey:@"event"];
[DOT logEvent:event];
var event = new Object();
screen["event"] = "w_view_product_list";
DOT.logEvent(event);
var eventevent = new Object();
screen["event"] = "w_view_product_list";
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
screen["event"] = "w_view_product_list";
DOT.logEvent(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: {
event : "w_view_product_list"
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event : "w_view_product_list"
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logEvent",
data : {
event : "w_view_product_list"
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_view_product_list");
DOT.logEvent(eventDic);
상품 공유 버튼이 클릭되는 시점에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
share_type
kakao
string
상품이 공유된 미디어
product_id
2007289429
string
상품 고유코드
product_name
플랩 더블 버튼 트렌치코트
string
상품명
category_id_a
00100
string
대 카테고리 코드
category_name_a
여성패션
string
대 카테고리 명칭
category_id_b
2984
string
중 카테고리 코드
category_name_b
트렌치코드
string
중 카테고리 명칭
brand_name
STUDIO TOMBOY
string
브랜드 명칭
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_share");
eventMap.put("share_type", "kakao");
Map<String, Object> productMap = new HashMap<>();
productMap.put("product_id", "2007289429");
productMap.put("product_name", "플랩 더블 버튼 트렌치코트");
productMap.put("category_id_a", "00100");
productMap.put("category_name_a", "여성패션");
productMap.put("category_id_b", "2984");
productMap.put("category_name_b", "트렌치코드");
productMap.put("brand_name", "STUDIO TOMBOY");
eventMap.put("product", productMap);
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_share"
eventMap["share_type"] = "kakao"
val productMap = mutableMapOf<String,Any>()
productMap["product_id"] = "2007289429"
productMap["product_name"] = "플랩 더블 버튼 트렌치코트"
productMap["category_id_a"] = "00100"
productMap["category_name_a"] = "여성패션"
productMap["category_id_b"] = "2984"
productMap["category_name_b"] = "트렌치코드"
productMap["brand_name"] = "STUDIO TOMBOY"
eventMap["product"] = productMap
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_share"
event["share_type"] = "kakao"
var product : [String: Any] = [:]
product["product_id"] = "2007289429"
product["product_name"] = "플랩 더블 버튼 트렌치코트"
product["category_id_a"] = "00100"
product["category_name_a"] = "여성패션"
product["category_id_b"] = "2984"
product["category_name_b"] = "트렌치코드"
product["brand_name"] = "STUDIO TOMBOY"
event["product"] = product
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_share" forKey:@"event"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"2007289429" forKey:@"product_id"];
[product setValue:@"플랩 더블 버튼 트렌치코트" forKey:@"product_name"];
[product setValue:@"00100" forKey:@"category_id_a"];
[product setValue:@"여성패션" forKey:@"category_name_a"];
[product setValue:@"2984" forKey:@"category_id_b"];
[product setValue:@"트렌치코드" forKey:@"category_name_b"];
[product setValue:@"STUDIO TOMBOY" forKey:@"brand_name"];
[event setValue:product forKey:@"product"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_share";
event["share_type"] = "kakao";
var product = new Object();
product["product_id"] = "2007289429";
product["product_name"] = "플랩 더블 버튼 트렌치코트";
product["category_id_a"] = "00100";
product["category_name_a"] = "여성패션";
product["category_id_b"] = "2984";
product["category_name_b"] = "트렌치코드";
product["brand_name"] = "STUDIO TOMBOY";
event["product"] = product;
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_share";
event["share_type"] = "kakao";
var product = new Object();
product["product_id"] = "2007289429";
product["product_name"] = "플랩 더블 버튼 트렌치코트";
product["category_id_a"] = "00100";
product["category_name_a"] = "여성패션";
product["category_id_b"] = "2984";
product["category_name_b"] = "트렌치코드";
product["brand_name"] = "STUDIO TOMBOY";
event["product"] = product;
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_share";
event["share_type"] = "kakao";
Map product = {};
product["product_id"] = "2007289429";
product["product_name"] = "플랩 더블 버튼 트렌치코트";
product["category_id_a"] = "00100";
product["category_name_a"] = "여성패션";
product["category_id_b"] = "2984";
product["category_name_b"] = "트렌치코드";
product["brand_name"] = "STUDIO TOMBOY";
event["product"] = product;
DOT.logEvent(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: {
event : "w_share",
share_type : "kakao",
product_id : "2007289429",
product_name : "플랩 더블 버튼 트렌치코트",
category_id_a : "00100",
category_name_a : "여성패션",
category_id_b : "2984",
category_name_b : "트렌치코드",
brand_name : "STUDIO TOMBOY"
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event : "w_share",
share_type : "kakao",
product : {
product_id : "2007289429",
product_name : "플랩 더블 버튼 트렌치코트",
category_id_a : "00100",
category_name_a : "여성패션",
category_id_b : "2984",
category_name_b : "트렌치코드",
brand_name : "STUDIO TOMBOY"
}
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logScreen",
data : {
event : "w_share",
share_type : "kakao",
product : {
product_id : "2007289429",
product_name : "플랩 더블 버튼 트렌치코트",
category_id_a : "00100",
category_name_a : "여성패션",
category_id_b : "2984",
category_name_b : "트렌치코드",
brand_name : "STUDIO TOMBOY"
}
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_share");
eventDic.Add("share_type", "kakao");
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("product_id", "2007289429");
product.Add("product_name", "플랩 더블 버튼 트렌치코트");
product.Add("category_id_a", "00100");
product.Add("category_name_a", "여성패션");
product.Add("category_id_b", "2984");
product.Add("category_name_b", "트렌치코드");
product.Add("brand_name", "STUDIO TOMBOY");
eventDic.Add("product", product);
DOT.logEvent(eventDic);
쿠폰이 다운로드된 시점에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
coupon_name
신규가입기념 20% 할인
string
쿠폰의 명칭이나 ID
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_download_coupon");
eventMap.put("coupon_name", "신규가입기념 20% 할인");
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_download_coupon"
eventMap["coupon_name"] = "신규가입기념 20% 할인"
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_download_coupon"
event["coupon_name"] = "신규가입기념 20% 할인"
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_download_coupon" forKey:@"event"];
[event setValue:@"신규가입기념 20% 할인" forKey:@"coupon_name"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_download_coupon";
event["coupon_name"] = "신규가입기념 20% 할인";
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_download_coupon";
event["coupon_name"] = "신규가입기념 20% 할인";
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_download_coupon";
event["coupon_name"] = "신규가입기념 20% 할인";
DOT.logEvent(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: {
event : "w_download_coupon",
coupon_name : "신규가입기념 20% 할인"
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event : "w_download_coupon",
coupon_name : "신규가입기념 20% 할인"
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logEvent",
data : {
event : "w_download_coupon",
coupon_name : "신규가입기념 20% 할인"
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_download_coupon");
eventDic.Add("coupon_name", "신규가입기념 20% 할인");
DOT.logEvent(eventDic);
쿠폰을 사용 완료하는 시점에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
coupon_name
신규가입기념 20% 할인
string
쿠폰의 명칭이나 ID
g1
5000
float
쿠폰 할인 금액
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_use_coupon");
eventMap.put("coupon_name", "신규가입기념 20% 할인");
eventMap.put("g1", 5000);
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_use_coupon"
eventMap["coupon_name"] = "신규가입기념 20% 할인"
eventMap["g1"] = 5000
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_use_coupon"
event["coupon_name"] = "신규가입기념 20% 할인"
event["g1"] = 5000
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_use_coupon" forKey:@"event"];
[event setValue:@"신규가입기념 20% 할인" forKey:@"coupon_name"];
[event setValue:[NSNumber numberWithInt:5000] forKey:@"g1"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_use_coupon";
event["coupon_name"] = "신규가입기념 20% 할인";
event["g1"] = 5000;
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_use_coupon";
event["coupon_name"] = "신규가입기념 20% 할인";
event["g1"] = 5000;
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_use_coupon";
event["coupon_name"] = "신규가입기념 20% 할인";
event["g1"] = 5000;
DOT.logEvent(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: {
event : "w_use_coupon",
coupon_name : "신규가입기념 20% 할인",
g1 : 5000
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event : "w_use_coupon",
coupon_name : "신규가입기념 20% 할인",
g1 : 5000
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logEvent",
data : {
event : "w_use_coupon",
coupon_name : "신규가입기념 20% 할인",
g1 : 5000
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_use_coupon");
eventDic.Add("coupon_name", "신규가입기념 20% 할인");
eventDic.Add("g1", 5000);
DOT.logEvent(eventDic);
크레딧을 사용 완료하는 시점에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
credit_name
네이버페이 크레딧
string
크레딧의 명칭이나 ID
g3
7500
float
크레딧 할인금액
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_use_credit");
eventMap.put("credit_name", "네이버페이 크레딧");
eventMap.put("g3", 7500);
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_use_credit"
eventMap["credit_name"] = "네이버페이 크레딧"
eventMap["g3"] = 7500
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_use_credit"
event["credit_name"] = "네이버페이 크레딧"
event["g3"] = 7500
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_use_credit" forKey:@"event"];
[event setValue:@"네이버페이 크레딧" forKey:@"credit_name"];
[event setValue:[NSNumber numberWithInt:7500] forKey:@"g3"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_use_credit";
event["credit_name"] = "네이버페이 크레딧";
event["g3"] = 7500;
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_use_credit";
event["credit_name"] = "네이버페이 크레딧";
event["g3"] = 7500;
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_use_credit";
event["credit_name"] = "네이버페이 크레딧";
event["g3"] = 7500;
DOT.logEvent(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: {
event : "w_use_credit",
credit_name : "네이버페이 크레딧",
g3 : 7500
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event : "w_use_credit",
credit_name : "네이버페이 크레딧",
g5 : 7500
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logEvent",
data : {
event : "w_use_credit",
credit_name : "네이버페이 크레딧",
g5 : 7500
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_use_credit");
eventDic.Add("credit_name", "네이버페이 크레딧");
eventDic.Add("g3", 7500);
DOT.logEvent(eventDic);
쿠폰 및 크레딧 이외 기타 할인을 사용 완료하는 시점에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
g5
10000
float
기타 할인 금액
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_other_discounts");
eventMap.put("g1", 10000);
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_other_discounts"
eventMap["g1"] = 10000
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_other_discounts"
event["g5"] = 10000
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_other_discounts" forKey:@"event"];
[event setValue:[NSNumber numberWithInt:10000] forKey:@"g5"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_other_discounts";
event["g5"] = 10000;
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_other_discounts";
event["g5"] = 10000;
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_other_discounts";
event["g5"] = 10000;
DOT.logEvent(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: {
event : "w_other_discounts",
g5 : 10000
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event : "w_other_discounts",
g5 : 10000
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logEvent",
data : {
event : "w_other_discounts",
g5 : 10000
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_other_discounts");
eventDic.Add("g5", 10000);
DOT.logEvent(eventDic);
상품의 리뷰를 조회하는 시점 또는 리뷰 상세화면에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
product_id
2007289429
string
상품 고유코드
product_name
플랩 더블 버튼 트렌치코트
string
상품명
category_id_a
00100
string
대 카테고리 코드
category_name_a
여성패션
string
대 카테고리 명칭
category_id_b
2984
string
중 카테고리 코드
category_name_b
트렌치코드
string
중 카테고리 명칭
brand_name
STUDIO TOMBOY
string
브랜드 명칭
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_see_review");
Map<String, Object> productMap = new HashMap<>();
productMap.put("product_id", "2007289429");
productMap.put("product_name", "플랩 더블 버튼 트렌치코트");
productMap.put("category_id_a", "00100");
productMap.put("category_name_a", "여성패션");
productMap.put("category_id_b", "2984");
productMap.put("category_name_b", "트렌치코드");
productMap.put("brand_name", "STUDIO TOMBOY");
eventMap.put("product", productMap);
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_see_review"
val productMap = mutableMapOf<String,Any>()
productMap["product_id"] = "2007289429"
productMap["product_name"] = "플랩 더블 버튼 트렌치코트"
productMap["category_id_a"] = "00100"
productMap["category_name_a"] = "여성패션"
productMap["category_id_b"] = "2984"
productMap["category_name_b"] = "트렌치코드"
productMap["brand_name"] = "STUDIO TOMBOY"
eventMap["product"] = productMap
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_see_review"
var product : [String: Any] = [:]
product["product_id"] = "2007289429"
product["product_name"] = "플랩 더블 버튼 트렌치코트"
product["category_id_a"] = "00100"
product["category_name_a"] = "여성패션"
product["category_id_b"] = "2984"
product["category_name_b"] = "트렌치코드"
product["brand_name"] = "STUDIO TOMBOY"
event["product"] = product
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_see_review" forKey:@"event"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"2007289429" forKey:@"product_id"];
[product setValue:@"플랩 더블 버튼 트렌치코트" forKey:@"product_name"];
[product setValue:@"00100" forKey:@"category_id_a"];
[product setValue:@"여성패션" forKey:@"category_name_a"];
[product setValue:@"2984" forKey:@"category_id_b"];
[product setValue:@"트렌치코드" forKey:@"category_name_b"];
[product setValue:@"STUDIO TOMBOY" forKey:@"brand_name"];
[event setValue:product forKey:@"product"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_see_review";
var product = new Object();
product["product_id"] = "2007289429";
product["product_name"] = "플랩 더블 버튼 트렌치코트";
product["category_id_a"] = "00100";
product["category_name_a"] = "여성패션";
product["category_id_b"] = "2984";
product["category_name_b"] = "트렌치코드";
product["brand_name"] = "STUDIO TOMBOY";
event["product"] = product;
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_see_review";
var product = new Object();
product["product_id"] = "2007289429";
product["product_name"] = "플랩 더블 버튼 트렌치코트";
product["category_id_a"] = "00100";
product["category_name_a"] = "여성패션";
product["category_id_b"] = "2984";
product["category_name_b"] = "트렌치코드";
product["brand_name"] = "STUDIO TOMBOY";
event["product"] = product;
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_see_review";
Map product = {};
product["product_id"] = "2007289429";
product["product_name"] = "플랩 더블 버튼 트렌치코트";
product["category_id_a"] = "00100";
product["category_name_a"] = "여성패션";
product["category_id_b"] = "2984";
product["category_name_b"] = "트렌치코드";
product["brand_name"] = "STUDIO TOMBOY";
event["product"] = product;
DOT.logEvent(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: {
event : "w_see_review",
product_id : "2007289429",
product_name : "플랩 더블 버튼 트렌치코트",
category_id_a : "00100",
category_name_a : "여성패션",
category_id_b : "2984",
category_name_b : "트렌치코드",
brand_name : "STUDIO TOMBOY"
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event : "w_see_review",
product : {
product_id : "2007289429",
product_name : "플랩 더블 버튼 트렌치코트",
category_id_a : "00100",
category_name_a : "여성패션",
category_id_b : "2984",
category_name_b : "트렌치코드",
brand_name : "STUDIO TOMBOY"
}
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logEvent",
data : {
event : "w_see_review",
product : {
product_id : "2007289429",
product_name : "플랩 더블 버튼 트렌치코트",
category_id_a : "00100",
category_name_a : "여성패션",
category_id_b : "2984",
category_name_b : "트렌치코드",
brand_name : "STUDIO TOMBOY"
}
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_see_review");
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("product_id", "2007289429");
product.Add("product_name", "플랩 더블 버튼 트렌치코트");
product.Add("category_id_a", "00100");
product.Add("category_name_a", "여성패션");
product.Add("category_id_b", "2984");
product.Add("category_name_b", "트렌치코드");
product.Add("brand_name", "STUDIO TOMBOY");
eventDic.Add("product", product);
DOT.logEvent(eventDic);
기획전 상세 화면에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
exhibition_id
2009022840
string
기획전 고유번호
exhibition_name
MD PICK! 내 피부를 위한 건강한 선택
string
기획전 명칭
Map<String, Object> pageMap = new HashMap<>();
pageMap.put("event", "w_view_exhibition");
pageMap.put("exhibition_id", "2009022840");
pageMap.put("exhibition_name", "MD PICK! 내 피부를 위한 건강한 선택");
DOT.logScreen(eventMap);
val pageMap = mutableMapOf<String,Any>()
pageMap["event"] = "w_view_exhibition"
pageMap["exhibition_id"] = "2009022840"
pageMap["exhibition_name"] = "MD PICK! 내 피부를 위한 건강한 선택"
DOT.logScreen(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_view_exhibition"
event["exhibition_id"] = "2009022840"
event["exhibition_name"] = "MD PICK! 내 피부를 위한 건강한 선택"
DOT.logScreen(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_view_exhibition" forKey:@"event"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[event setValue:@"2009022840" forKey:@"exhibition_id"];
[event setValue:@"MD PICK! 내 피부를 위한 건강한 선택" forKey:@"exhibition_name"];
[DOT logScreen:event];
var event = new Object();
event["event"] = "w_view_exhibition";
event["exhibition_id"] = "2009022840";
event["exhibition_name"] = "MD PICK! 내 피부를 위한 건강한 선택";
DOT.logScreen(event);
var screen = new Object();
screen["event"] = "w_view_exhibition";
screen["exhibition_id"] = "2009022840";
screen["exhibition_name"] = "MD PICK! 내 피부를 위한 건강한 선택";
WDOT.onStartPage(screen);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_view_exhibition";
event["exhibition_id"] = "2009022840";
event["exhibition_name"] = "MD PICK! 내 피부를 위한 건강한 선택";
DOT.logScreen(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logScreen",
data: {
event : "w_view_exhibition",
exhibition_id : "2009022840",
exhibition_name : "MD PICK! 내 피부를 위한 건강한 선택"
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge != null &&
(NativeModules.DotReactBridge.onStartPage(),
NativeModules.DotReactBridge.logScreen(
JSON.stringify({
event: 'w_view_exhibition',
exhibition_id : "2009022840",
exhibition_name : "MD PICK! 내 피부를 위한 건강한 선택"
}),
));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logScreen",
data : {
event : "w_view_exhibition",
exhibition_id : "2009022840",
exhibition_name : "MD PICK! 내 피부를 위한 건강한 선택"
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_view_exhibition");
eventDic.Add("exhibition_id", "2009022840");
eventDic.Add("exhibition_name", "MD PICK! 내 피부를 위한 건강한 선택");
DOT.logScreen(eventDic);
이벤트 상세화면에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
event_id
E200905605
string
이벤트 고유번호
event_name
10월 COUPON PACK
string
이벤트 명칭
Map<String, Object> pageMap = new HashMap<>();
pageMap.put("event", "w_view_event");
pageMap.put("event_id", "E200905605");
pageMap.put("event_name", "10월 COUPON PACK");
DOT.logScreen(pageMap);
val pageMap = mutableMapOf<String,Any>()
pageMap["event"] = "w_view_event"
pageMap["event_id"] = "E200905605"
pageMap["event_name"] = "10월 COUPON PACK"
DOT.logScreen(pageMap)
var screen = NSMutableDictionary()
screen["event"] = "w_view_event"
screen["event_id"] = "E200905605"
screen["event_name"] = "10월 COUPON PACK"
DOT.logScreen(screen)
NSMutableDictionary *screen = [[NSMutableDictionary alloc] init];
[screen setValue:@"w_view_event" forKey:@"event"];
[screen setValue:@"E200905605" forKey:@"event_id"];
[screen setValue:@"10월 COUPON PACK" forKey:@"event_name"];
[DOT logScreen:screen];
var screen = new Object();
screen["event"] = "w_view_event";
screen["event_id"] = "E200905605";
screen["event_name"] = "10월 COUPON PACK";
DOT.logScreen(screen);
var screen = new Object();
screen["event"] = "w_view_event";
screen["event_id"] = "E200905605";
screen["event_name"] = "10월 COUPON PACK";
WDOT.onStartPage(screen);
// .dart 에서 호출 할 때
Map screen = {};
screen["event"] = "w_view_event";
screen["event_id"] = "E200905605";
screen["event_name"] = "10월 COUPON PACK";
DOT.logScreen(screen);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logScreen",
data: {
event : "w_view_event",
event_id : "E200905605",
event_name : "10월 COUPON PACK"
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge != null &&
(NativeModules.DotReactBridge.onStartPage(),
NativeModules.DotReactBridge.logScreen(JSON.stringify({
event : "w_view_event",
event_id : "E200905605",
event_name : "10월 COUPON PACK"
}),
));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logScreen",
data : {
event : "w_view_event",
event_id : "E200905605",
event_name : "10월 COUPON PACK"
}
}));
Dictionary<string, object> page = new Dictionary<string, object>();
page.Add("event", "w_view_event");
page.Add("event_id", "E200905605");
page.Add("event_name", "10월 COUPON PACK");
DOT.logScreen(page);
이벤트 참여 완료 시점에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
event_id
E200905605
string
이벤트 고유번호
event_name
10월 COUPON PACK
string
이벤트 명칭
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_event_participated");
eventMap.put("event_id", "E200905605");
eventMap.put("event_name", "10월 COUPON PACK");
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_event_participated"
eventMap["event_id"] = "E200905605"
eventMap["event_name"] = "10월 COUPON PACK"
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_event_participated"
event["event_id"] = "E200905605"
event["event_name"] = "10월 COUPON PACK"
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_event_paticipated" forKey:@"event"];
[event setValue:@"E200905605" forKey:@"event_id"];
[event setValue:@"10월 COUPON PACK" forKey:@"event_name"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_event_participated";
event["event_id"] = "E200905605";
event["event_name"] = "10월 COUPON PACK";
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_event_participated";
event["event_id"] = "E200905605";
event["event_name"] = "10월 COUPON PACK";
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_event_participated";
event["event_id"] = "E200905605";
event["event_name"] = "10월 COUPON PACK";
DOT.logEvent(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: {
event : "w_event_participated",
event_id : "E200905605",
event_name : "10월 COUPON PACK"
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event : "w_event_participated",
event_id : "E200905605",
event_name : "10월 COUPON PACK"
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logEvent",
data : {
event : "w_event_participated",
event_id : "E200905605",
event_name : "10월 COUPON PACK"
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_event_participated");
eventDic.Add("event_id", "E200905605");
eventDic.Add("event_name", "10월 COUPON PACK");
DOT.logEvent(eventDic);
상품이 위시리스트에 추가된 시점에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
product_id
301056226
string
상품 고유코드
product_name
wool cropped vest (navy)
string
상품명
category_id_a
c294
string
대 카테고리 코드
category_name_a
women
string
대 카테고리 명칭
category_id_b
d3775
string
중 카테고리 코드
category_name_b
니트웨어
string
중 카테고리 명칭
brand_name
blank03
string
브랜드 명칭
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_add_to_wishlist");
Map<String, Object> productMap = new HashMap<>();
productMap.put("product_id", "301056226");
productMap.put("product_name", "wool cropped vest (navy)");
productMap.put("category_id_a", "c294");
productMap.put("category_name_a", "women");
productMap.put("category_id_b", "d3775");
productMap.put("category_name_b", "니트웨어");
productMap.put("brand_name", "blank03");
eventMap.put("product", productMap);
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_add_to_wishlist"
val productMap = mutableMapOf<String,Any>()
productMap["product_id"] = "301056226"
productMap["product_name"] = "wool cropped vest (navy)"
productMap["category_id_a"] = "c294"
productMap["category_name_a"] = "women"
productMap["category_id_b"] = "d3775"
productMap["category_name_b"] = "니트웨어"
productMap["brand_name"] = "lank03"
eventMap["product"] = productMap
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_add_to_wishlist"
var product : [String: Any] = [:]
product["product_id"] = "301056226"
product["product_name"] = "wool cropped vest (navy)"
product["category_id_a"] = "c294"
product["category_name_a"] = "women"
product["category_id_b"] = "d3775"
product["category_name_b"] = "니트웨어"
product["brand_name"] = "blank03"
event["product"] = product
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_add_to_wishlist" forKey:@"event"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"301056226" forKey:@"product_id"];
[product setValue:@"wool cropped vest (navy)" forKey:@"product_name"];
[product setValue:@"c294" forKey:@"category_id_a"];
[product setValue:@"women" forKey:@"category_name_a"];
[product setValue:@"d3775" forKey:@"category_id_b"];
[product setValue:@"니트웨어" forKey:@"category_name_b"];
[product setValue:@"blank03" forKey:@"brand_name"];
[event setValue:product forKey:@"product"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_add_to_wishlist";
var product = new Object();
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
event["product"] = product;
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_add_to_wishlist";
var product = new Object();
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
event["product"] = product;
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_add_to_wishlist";
Map product = {};
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
event["product"] = product;
DOT.logEvent(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: {
event : "w_add_to_wishlist",
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03"
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event : "w_add_to_wishlist",
product : {
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03"
}
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logEvent",
data : {
event : "w_add_to_wishlist",
product : {
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03"
}
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_add_to_wishlist");
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("product_id", "301056226");
product.Add("product_name", "wool cropped vest (navy)");
product.Add("category_id_a", "c294");
product.Add("category_name_a", "women");
product.Add("category_id_b", "d3775");
product.Add("category_name_b", "니트웨어");
product.Add("brand_name", "blank03");
eventDic.Add("product", product);
DOT.logEvent(eventDic);
상품이 위시리스트에 제거된 시점에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
product_id
301056226
string
상품 고유코드
product_name
wool cropped vest (navy)
string
상품명
category_id_a
c294
string
대 카테고리 코드
category_name_a
women
string
대 카테고리 명칭
category_id_b
d3775
string
중 카테고리 코드
category_name_b
니트웨어
string
중 카테고리 명칭
brand_name
blank03
string
브랜드 명칭
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_remove_from_wishlist");
Map<String, Object> productMap = new HashMap<>();
productMap.put("product_id", "301056226");
productMap.put("product_name", "wool cropped vest (navy)");
productMap.put("category_id_a", "c294");
productMap.put("category_name_a", "women");
productMap.put("category_id_b", "d3775");
productMap.put("category_name_b", "니트웨어");
productMap.put("brand_name", "blank03");
eventMap.put("product", productMap);
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_remove_from_wishlist"
val productMap = mutableMapOf<String,Any>()
productMap["product_id"] = "301056226"
productMap["product_name"] = "wool cropped vest (navy)"
productMap["category_id_a"] = "c294"
productMap["category_name_a"] = "women"
productMap["category_id_b"] = "d3775"
productMap["category_name_b"] = "니트웨어"
productMap["brand_name"] = "lank03"
eventMap["product"] = productMap
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_remove_from_wishlist"
var product : [String: Any] = [:]
product["product_id"] = "301056226"
product["product_name"] = "wool cropped vest (navy)"
product["category_id_a"] = "c294"
product["category_name_a"] = "women"
product["category_id_b"] = "d3775"
product["category_name_b"] = "니트웨어"
product["brand_name"] = "blank03"
event["product"] = product
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_remove_from_wishlist" forKey:@"event"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"301056226" forKey:@"product_id"];
[product setValue:@"wool cropped vest (navy)" forKey:@"product_name"];
[product setValue:@"c294" forKey:@"category_id_a"];
[product setValue:@"women" forKey:@"category_name_a"];
[product setValue:@"d3775" forKey:@"category_id_b"];
[product setValue:@"니트웨어" forKey:@"category_name_b"];
[product setValue:@"blank03" forKey:@"brand_name"];
[event setValue:product forKey:@"product"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_remove_from_wishlist";
var product = new Object();
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
event["product"] = product;
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_remove_from_wishlist";
var product = new Object();
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
event["product"] = product;
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_remove_from_wishlist";
Map product = {};
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
event["product"] = product;
DOT.logEvent(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: {
event : "w_remove_from_wishlist",
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03"
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event : "w_remove_from_wishlist",
product : {
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03"
}
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logEvent",
data : {
event : "w_remove_from_wishlist",
product : {
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03"
}
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_remove_from_wishlist");
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("product_id", "301056226");
product.Add("product_name", "wool cropped vest (navy)");
product.Add("category_id_a", "c294");
product.Add("category_name_a", "women");
product.Add("category_id_b", "d3775");
product.Add("category_name_b", "니트웨어");
product.Add("brand_name", "blank03");
eventDic.Add("product", product);
DOT.logEvent(eventDic);
장바구니 화면에 아래 코드를 추가합니다.
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_view_cart");
DOT.logEvent(logEvent);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_view_cart"
DOT.logEvent(logEvent)
let event = NSMutableDictionary()
event["event"] = "w_view_cart"
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_view_cart" forKey:@"event"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_view_cart";
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_view_cart";
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_view_cart";
DOT.logEvent(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: {
event : "w_view_cart"
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event : "w_view_cart"
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logEvent",
data : {
event : "w_view_cart"
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_view_cart");
DOT.logEvent(eventDic);
상품이 장바구니에 추가되는 시점에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
product_id
301056226, 301053552
string
상품 고유코드
product_name
wool cropped vest (navy), white calf_Libra
string
상품명
category_id_a
c294, c493
string
대 카테고리 코드
category_name_a
women, men
string
대 카테고리 명칭
category_id_b
d3775, d5783
string
중 카테고리 코드
category_name_b
니트웨어, 스니커즈
string
중 카테고리 명칭
brand_name
blank03, IMMATERIAL
string
브랜드 명칭
quantity
1, 2
integer
상품 개수
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_add_to_cart");
Map<String, Object> productMap = new HashMap<>();
productMap.put("product_id", "301056226");
productMap.put("product_name", "wool cropped vest (navy)");
productMap.put("category_id_a", "c294");
productMap.put("category_name_a", "women");
productMap.put("category_id_b", "d3775");
productMap.put("category_name_b", "니트웨어");
productMap.put("brand_name", "blank03");
productMap.put("quantity", 1);
eventMap.put("product", productMap);
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_add_to_cart"
val productMap = mutableMapOf<String,Any>()
productMap["product_id"] = "301056226"
productMap["product_name"] = "wool cropped vest (navy)"
productMap["category_id_a"] = "c294"
productMap["category_name_a"] = "women"
productMap["category_id_b"] = "d3775"
productMap["category_name_b"] = "니트웨어"
productMap["brand_name"] = "lank03"
eventMap["product"] = productMap
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_add_to_cart"
var product : [String: Any] = [:]
product["product_id"] = "301056226"
product["product_name"] = "wool cropped vest (navy)"
product["category_id_a"] = "c294"
product["category_name_a"] = "women"
product["category_id_b"] = "d3775"
product["category_name_b"] = "니트웨어"
product["brand_name"] = "blank03"
product["quantity"] = 1
event["product"] = product
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_add_to_cart" forKey:@"event"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"301056226" forKey:@"product_id"];
[product setValue:@"wool cropped vest (navy)" forKey:@"product_name"];
[product setValue:@"c294" forKey:@"category_id_a"];
[product setValue:@"women" forKey:@"category_name_a"];
[product setValue:@"d3775" forKey:@"category_id_b"];
[product setValue:@"니트웨어" forKey:@"category_name_b"];
[product setValue:@"blank03" forKey:@"brand_name"];
[product setValue:[NSNumber numberWithInt:1] forKey:@"quantity"];
[event setValue:product forKey:@"product"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_add_to_cart";
var product = new Object();
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
product["quantity"] = 1;
event["product"] = product;
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_add_to_cart";
var product = new Object();
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
product["quantity"] = 1;
event["product"] = product;
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_add_to_cart";
Map product = {};
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
product["quantity"] = 1;
event["product"] = product;
DOT.logEvent(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: {
event : "w_add_to_cart",
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03",
quantity : 1
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event : "w_add_to_cart"
product : {
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03",
quantity : 1,
}
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logEvent",
data : {
event : "w_add_to_cart"
product : {
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03",
quantity : 1,
}
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_add_to_cart");
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("product_id", "301056226");
product.Add("product_name", "wool cropped vest (navy)");
product.Add("category_id_a", "c294");
product.Add("category_name_a", "women");
product.Add("category_id_b", "d3775");
product.Add("category_name_b", "니트웨어");
product.Add("brand_name", "blank03");
product.Add("quantity", 1);
eventDic.Add("product", product);
DOT.logEvent(eventDic);
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_add_to_cart");
Map<String, Object> productMap1 = new HashMap<>();
productMap1.put("product_id", "301056226");
productMap1.put("product_name", "wool cropped vest (navy)");
productMap1.put("category_id_a", "c294");
productMap1.put("category_name_a", "women");
productMap1.put("category_id_b", "d3775");
productMap1.put("category_name_b", "니트웨어");
productMap1.put("brand_name", "blank03");
productMap1.put("quantity", 1);
Map<String, Object> productMap2 = new HashMap<>();
productMap2.put("product_id", "301053552");
productMap2.put("product_name", "white calf_Libra");
productMap2.put("category_id_a", "c493");
productMap2.put("category_name_a", "men");
productMap2.put("category_id_b", "d5783");
productMap2.put("category_name_b", "스니커즈");
productMap2.put("brand_name", "IMMATERIAL");
productMap2.put("quantity", 2);
List<Map<String, Object>> productList = new ArrayList<>();
productList.add(productMap1);
productList.add(productMap2);
eventMap.put("product", productList);
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_add_to_cart"
val productMap1 = mutableMapOf<String,Any>()
productMap1["product_id"] = "301056226"
productMap1["product_name"] = "wool cropped vest (navy)"
productMap1["category_id_a"] = "c294"
productMap1["category_name_a"] = "women"
productMap1["category_id_b"] = "d3775"
productMap1["category_name_b"] = "니트웨어"
productMap1["brand_name"] = "lank03"
productMap1["quantity"] = 1
val productMap2 = mutableMapOf<String,Any>()
productMap2["product_id"] = "301053552"
productMap2["product_name"] = "white calf_Libra"
productMap2["category_id_a"] = "c493"
productMap2["category_name_a"] = "men"
productMap2["category_id_b"] = "d5783"
productMap2["category_name_b"] = "스니커즈"
productMap2["brand_name"] = "IMMATERIAL"
productMap2["quantity"] = 2
val productList = ArrayList<Map<String,Any>>()
productList.add(productMap1)
productList.add(productMap2)
eventMap["product"] = productList
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_add_to_cart"
var product1 : [String: Any] = [:]
product1["product_id"] = "301056226"
product1["product_name"] = "wool cropped vest (navy)"
product1["category_id_a"] = "c294"
product1["category_name_a"] = "women"
product1["category_id_b"] = "d3775"
product1["category_name_b"] = "니트웨어"
product1["brand_name"] = "blank03"
product1["quantity"] = 1
var product2 : [String: Any] = [:]
product2["product_id"] = "301053552"
product2["product_name"] = "white calf_Libra"
product2["category_id_a"] = "c493"
product2["category_name_a"] = "men"
product2["category_id_b"] = "d5783"
product2["category_name_b"] = "스니커즈"
product2["brand_name"] = "IMMATERIAL"
product2["quantity"] = 2
var productArray : [Any] = []
productArray.append(product1)
productArray.append(product2)
event["product"] = productArray
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_add_to_cart" forKey:@"event"];
NSMutableDictionary *product1 = [[NSMutableDictionary alloc] init];
[product1 setValue:@"301056226" forKey:@"product_id"];
[product1 setValue:@"wool cropped vest (navy)" forKey:@"product_name"];
[product1 setValue:@"c294" forKey:@"category_id_a"];
[product1 setValue:@"women" forKey:@"category_name_a"];
[product1 setValue:@"d3775" forKey:@"category_id_b"];
[product1 setValue:@"니트웨어" forKey:@"category_name_b"];
[product1 setValue:@"blank03" forKey:@"brand_name"];
[product1 setValue:[NSNumber numberWithInt:1] forKey:@"quantity"];
NSMutableDictionary *product2 = [[NSMutableDictionary alloc] init];
[product2 setValue:@"301053552" forKey:@"product_id"];
[product2 setValue:@"white calf_Libra" forKey:@"product_name"];
[product2 setValue:@"c493" forKey:@"category_id_a"];
[product2 setValue:@"men" forKey:@"category_name_a"];
[product2 setValue:@"d5783" forKey:@"category_id_b"];
[product2 setValue:@"스니커즈" forKey:@"category_name_b"];
[product2 setValue:@"IMMATERIAL" forKey:@"brand_name"];
[product2 setValue:[NSNumber numberWithInt:2] forKey:@"quantity"];
[event setValue:product1 forKey:@"product1"];
[event setValue:product2 forKey:@"product2"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_add_to_cart";
var product1 = new Object();
product1["product_id"] = "301056226";
product1["product_name"] = "wool cropped vest (navy)";
product1["category_id_a"] = "c294";
product1["category_name_a"] = "women";
product1["category_id_b"] = "d3775";
product1["category_name_b"] = "니트웨어";
product1["brand_name"] = "blank03";
product1["quantity"] = 1;
var product2 = new Object();
product2["product_id"] = "301053552";
product2["product_name"] = "white calf_Libra";
product2["category_id_a"] = "c493";
product2["category_name_a"] = "men";
product2["category_id_b"] = "d5783";
product2["category_name_b"] = "스니커즈";
product2["brand_name"] = "IMMATERIAL";
product2["quantity"] = 2;
var productArray = new Array();
productArray.push(product1);
productArray.push(product2);
event["product"] = productArray;
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_add_to_cart";
var product1 = new Object();
product1["product_id"] = "301056226";
product1["product_name"] = "wool cropped vest (navy)";
product1["category_id_a"] = "c294";
product1["category_name_a"] = "women";
product1["category_id_b"] = "d3775";
product1["category_name_b"] = "니트웨어";
product1["brand_name"] = "blank03";
product1["quantity"] = 1;
var product2 = new Object();
product2["product_id"] = "301053552";
product2["product_name"] = "white calf_Libra";
product2["category_id_a"] = "c493";
product2["category_name_a"] = "men";
product2["category_id_b"] = "d5783";
product2["category_name_b"] = "스니커즈";
product2["brand_name"] = "IMMATERIAL";
product2["quantity"] = 2;
var productArray = new Array();
productArray.push(product1);
productArray.push(product2);
event["product"] = productArray;
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_add_to_cart";
Map product1 = {};
product1["product_id"] = "301056226";
product1["product_name"] = "wool cropped vest (navy)";
product1["category_id_a"] = "c294";
product1["category_name_a"] = "women";
product1["category_id_b"] = "d3775";
product1["category_name_b"] = "니트웨어";
product1["brand_name"] = "blank03";
product1["quantity"] = 1;
Map product2 = {};
product2["product_id"] = "301053552";
product2["product_name"] = "white calf_Libra";
product2["category_id_a"] = "c493";
product2["category_name_a"] = "men";
product2["category_id_b"] = "d5783";
product2["category_name_b"] = "스니커즈";
product2["brand_name"] = "IMMATERIAL";
product2["quantity"] = 2;
var productArray = [];
productArray.add(product1);
productArray.add(product2);
event["product"] = productArray;
DOT.logEvent(event);
// webview 에서 호출 할 때
var product = new Object();
var productArray = new Array();
for( var inx = 0; inx < cartlist[장바구니 상품 목록].length; inx++){
var cartProduct[장바구니담은상품] = cartlist[inx];
var event = new Object();
event["event"] = "w_add_to_cart";
event["product_id"] = "장바구니 담은 상품에 대한 상품 코드";
event["product_name"] = "장바구니 담은 상품에 대한 상품명";
event["category_id_a"] = "장바구니 담은 상품에 대한 대카테고리 코드";
event["category_name_a"] = "장바구니 담은 상품에 대한 대카테고리 이름";
event["category_id_b"] = "장바구니 담은 상품에 대한 중카테고리 코드";
event["category_name_b"] = "장바구니 담은 상품에 대한 중카테고리 이름";
event["brand_name"] = "장바구니 담은 상품에 대한 브랜드이름";
event["quantity"] = 장바구니 담은 상품의 수량;
productArray.push(event);
}
product["product"] = productArray;
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: product
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event: "w_add_to_cart",
product: [
{
product_id: "301056226",
product_name: "wool cropped vest (navy)",
category_id_a: "c294",
category_name_a: "women",
category_id_b: "d3775",
category_name_b: "니트웨어",
brand_name: "blank03",
quantity: 1
},
{
product_id: "301053552",
product_name: "white calf_Libra",
category_id_a: "c493",
category_name_a: "men",
category_id_b: "d5783",
category_name_b: "스니커즈",
brand_name: "IMMATERIAL",
quantity: 2
}
]
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method: "logEvent",
data: {
event: "w_add_to_cart",
product: [
{
product_id: "301056226",
product_name: "wool cropped vest (navy)",
category_id_a: "c294",
category_name_a: "women",
category_id_b: "d3775",
category_name_b: "니트웨어",
brand_name: "blank03",
quantity: 1
},
{
product_id: "301053552",
product_name: "white calf_Libra",
category_id_a: "c493",
category_name_a: "men",
category_id_b: "d5783",
category_name_b: "스니커즈",
brand_name: "IMMATERIAL",
quantity: 2
}
]
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_add_to_cart");
Dictionary<string, object> product1 = new Dictionary<string, object>();
product1.Add("product_id", "301056226");
product1.Add("product_name", "wool cropped vest (navy)");
product1.Add("category_id_a", "c294");
product1.Add("category_name_a", "women");
product1.Add("category_id_b", "d3775");
product1.Add("category_name_b", "니트웨어");
product1.Add("brand_name", "blank03");
product1.Add("quantity", 1);
Dictionary<string, object> product2 = new Dictionary<string, object>();
product2.Add("product_id", "301053552");
product2.Add("product_name", "white calf_Libra");
product2.Add("category_id_a", "c493");
product2.Add("category_name_a", "men");
product2.Add("category_id_b", "d5783");
product2.Add("category_name_b", "스니커즈");
product2.Add("brand_name", "IMMATERIAL");
product2.Add("quantity", 2);
eventDic.Add("product", product1);
eventDic.Add("product", product2);
DOT.logEvent(eventDic)
상품이 장바구니에서 제거되는 시점에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
product_id
301056226, 301053552
string
상품 고유코드
product_name
wool cropped vest (navy), white calf_Libra
string
상품명
category_id_a
c294, c493
string
대 카테고리 코드
category_name_a
women, men
string
대 카테고리 명칭
category_id_b
d3775, d5783
string
중 카테고리 코드
category_name_b
니트웨어, 스니커즈
string
중 카테고리 명칭
brand_name
blank03, IMMATERIAL
string
브랜드 명칭
quantity
1, 2
integer
상품 개수
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_remove_from_cart");
Map<String, Object> productMap = new HashMap<>();
productMap.put("product_id", "301056226");
productMap.put("product_name", "wool cropped vest (navy)");
productMap.put("category_id_a", "c294");
productMap.put("category_name_a", "women");
productMap.put("category_id_b", "d3775");
productMap.put("category_name_b", "니트웨어");
productMap.put("brand_name", "blank03");
productMap.put("quantity", 1);
eventMap.put("product", productMap);
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_remove_from_cart"
val productMap = mutableMapOf<String,Any>()
productMap["product_id"] = "301056226"
productMap["product_name"] = "wool cropped vest (navy)"
productMap["category_id_a"] = "c294"
productMap["category_name_a"] = "women"
productMap["category_id_b"] = "d3775"
productMap["category_name_b"] = "니트웨어"
productMap["brand_name"] = "blank03"
productMap["quantity"] = 1
eventMap["product"] = productMap
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_remove_from_cart"
var product : [String: Any] = [:]
product["product_id"] = "301056226"
product["product_name"] = "wool cropped vest (navy)"
product["category_id_a"] = "c294"
product["category_name_a"] = "women"
product["category_id_b"] = "d3775"
product["category_name_b"] = "니트웨어"
product["brand_name"] = "blank03"
product["quantity"] = 1
event["product"] = product
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_remove_from_cart" forKey:@"event"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"301056226" forKey:@"product_id"];
[product setValue:@"wool cropped vest (navy)" forKey:@"product_name"];
[product setValue:@"c294" forKey:@"category_id_a"];
[product setValue:@"women" forKey:@"category_name_a"];
[product setValue:@"d3775" forKey:@"category_id_b"];
[product setValue:@"니트웨어" forKey:@"category_name_b"];
[product setValue:@"blank03" forKey:@"brand_name"];
[product setValue:[NSNumber numberWithInt:1] forKey:@"quantity"];
[event setValue:product forKey:@"product"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_remove_from_cart";
var product = new Object();
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
product["quantity"] = 1;
event["product"] = product;
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_remove_from_cart";
var product = new Object();
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
product["quantity"] = 1;
event["product"] = product;
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_remove_from_cart";
Map product = {};
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
product["quantity"] = 1;
event["product"] = product;
DOT.logEvent(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: {
event : "w_remove_from_cart",
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03",
quantity : 1
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event : "w_remove_from_cart"
product : {
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03",
quantity : 1,
}
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logEvent",
data : {
event : "w_remove_from_cart"
product : {
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03",
quantity : 1,
}
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_remove_from_cart");
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("product_id", "301056226");
product.Add("product_name", "wool cropped vest (navy)");
product.Add("category_id_a", "c294");
product.Add("category_name_a", "women");
product.Add("category_id_b", "d3775");
product.Add("category_name_b", "니트웨어");
product.Add("brand_name", "blank03");
product.Add("quantity", 1);
eventDic.Add("product", product);
DOT.logEvent(eventDic);
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_remove_from_cart");
Map<String, Object> productMap1 = new HashMap<>();
productMap1.put("product_id", "301056226");
productMap1.put("product_name", "wool cropped vest (navy)");
productMap1.put("category_id_a", "c294");
productMap1.put("category_name_a", "women");
productMap1.put("category_id_b", "d3775");
productMap1.put("category_name_b", "니트웨어");
productMap1.put("brand_name", "blank03");
productMap1.put("quantity", 1);
Map<String, Object> productMap2 = new HashMap<>();
productMap2.put("product_id", "301053552");
productMap2.put("product_name", "white calf_Libra");
productMap2.put("category_id_a", "c493");
productMap2.put("category_name_a", "men");
productMap2.put("category_id_b", "d5783");
productMap2.put("category_name_b", "스니커즈");
productMap2.put("brand_name", "IMMATERIAL");
productMap2.put("quantity", 2);
List<Map<String, Object>> productList = new ArrayList<>();
productList.add(productMap1);
productList.add(productMap2);
eventMap.put("product", productList);
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_remove_from_cart"
val productMap1 = mutableMapOf<String,Any>()
productMap1["product_id"] = "301056226"
productMap1["product_name"] = "wool cropped vest (navy)"
productMap1["category_id_a"] = "c294"
productMap1["category_name_a"] = "women"
productMap1["category_id_b"] = "d3775"
productMap1["category_name_b"] = "니트웨어"
productMap1["brand_name"] = "lank03"
productMap1["quantity"] = 1
val productMap2 = mutableMapOf<String,Any>()
productMap2["product_id"] = "301053552"
productMap2["product_name"] = "white calf_Libra"
productMap2["category_id_a"] = "c493"
productMap2["category_name_a"] = "men"
productMap2["category_id_b"] = "d5783"
productMap2["category_name_b"] = "스니커즈"
productMap2["brand_name"] = "IMMATERIAL"
productMap2["quantity"] = 2
val productList = ArrayList<Map<String,Any>>()
productList.add(productMap1)
productList.add(productMap2)
eventMap["product"] = productList
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_remove_from_cart"
var product1 : [String: Any] = [:]
product1["product_id"] = "301056226"
product1["product_name"] = "wool cropped vest (navy)"
product1["category_id_a"] = "c294"
product1["category_name_a"] = "women"
product1["category_id_b"] = "d3775"
product1["category_name_b"] = "니트웨어"
product1["brand_name"] = "blank03"
product1["quantity"] = 1
var product2 : [String: Any] = [:]
product2["product_id"] = "301053552"
product2["product_name"] = "white calf_Libra"
product2["category_id_a"] = "c493"
product2["category_name_a"] = "men"
product2["category_id_b"] = "d5783"
product2["category_name_b"] = "스니커즈"
product2["brand_name"] = "IMMATERIAL"
product2["quantity"] = 2
var productArray : [Any] = []
productArray.append(product1)
productArray.append(product2)
event["product"] = productArray
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_remove_from_cart" forKey:@"event"];
NSMutableDictionary *product1 = [[NSMutableDictionary alloc] init];
[product1 setValue:@"301056226" forKey:@"product_id"];
[product1 setValue:@"wool cropped vest (navy)" forKey:@"product_name"];
[product1 setValue:@"c294" forKey:@"category_id_a"];
[product1 setValue:@"women" forKey:@"category_name_a"];
[product1 setValue:@"d3775" forKey:@"category_id_b"];
[product1 setValue:@"니트웨어" forKey:@"category_name_b"];
[product1 setValue:@"blank03" forKey:@"brand_name"];
[product1 setValue:[NSNumber numberWithInt:1] forKey:@"quantity"];
NSMutableDictionary *product2 = [[NSMutableDictionary alloc] init];
[product2 setValue:@"301053552" forKey:@"product_id"];
[product2 setValue:@"white calf_Libra" forKey:@"product_name"];
[product2 setValue:@"c493" forKey:@"category_id_a"];
[product2 setValue:@"men" forKey:@"category_name_a"];
[product2 setValue:@"d5783" forKey:@"category_id_b"];
[product2 setValue:@"스니커즈" forKey:@"category_name_b"];
[product2 setValue:@"IMMATERIAL" forKey:@"brand_name"];
[product2 setValue:[NSNumber numberWithInt:2] forKey:@"quantity"];
[event setValue:product1 forKey:@"product1"];
[event setValue:product1 forKey:@"product2"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_remove_from_cart";
var product1 = new Object();
product1["product_id"] = "301056226";
product1["product_name"] = "wool cropped vest (navy)";
product1["category_id_a"] = "c294";
product1["category_name_a"] = "women";
product1["category_id_b"] = "d3775";
product1["category_name_b"] = "니트웨어";
product1["brand_name"] = "blank03";
product1["quantity"] = 1;
var product2 = new Object();
product2["product_id"] = "301053552";
product2["product_name"] = "white calf_Libra";
product2["category_id_a"] = "c493";
product2["category_name_a"] = "men";
product2["category_id_b"] = "d5783";
product2["category_name_b"] = "스니커즈";
product2["brand_name"] = "IMMATERIAL";
product2["quantity"] = 2;
var productArray = new Array();
productArray.push(product1);
productArray.push(product2);
event["product"] = productArray;
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_remove_from_cart";
var product1 = new Object();
product1["product_id"] = "301056226";
product1["product_name"] = "wool cropped vest (navy)";
product1["category_id_a"] = "c294";
product1["category_name_a"] = "women";
product1["category_id_b"] = "d3775";
product1["category_name_b"] = "니트웨어";
product1["brand_name"] = "blank03";
product1["quantity"] = 1;
var product2 = new Object();
product2["product_id"] = "301053552";
product2["product_name"] = "white calf_Libra";
product2["category_id_a"] = "c493";
product2["category_name_a"] = "men";
product2["category_id_b"] = "d5783";
product2["category_name_b"] = "스니커즈";
product2["brand_name"] = "IMMATERIAL";
product2["quantity"] = 2;
var productArray = new Array();
productArray.push(product1);
productArray.push(product2);
event["product"] = productArray;
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_remove_from_cart";
Map product1 = {};
product1["product_id"] = "301056226";
product1["product_name"] = "wool cropped vest (navy)";
product1["category_id_a"] = "c294";
product1["category_name_a"] = "women";
product1["category_id_b"] = "d3775";
product1["category_name_b"] = "니트웨어";
product1["brand_name"] = "blank03";
product1["quantity"] = 1;
Map product2 = {};
product2["product_id"] = "301053552";
product2["product_name"] = "white calf_Libra";
product2["category_id_a"] = "c493";
product2["category_name_a"] = "men";
product2["category_id_b"] = "d5783";
product2["category_name_b"] = "스니커즈";
product2["brand_name"] = "IMMATERIAL";
product2["quantity"] = 2;
var productArray = [];
productArray.add(product1);
productArray.add(product2);
event["product"] = productArray;
DOT.logEvent(event);
// webview 에서 호출 할 때
var product = new Object();
var productArray = new Array();
for( var inx = 0; inx < cartlist[장바구니 상품 목록].length; inx++){
var cartRmProduct[장바구니제거상품] = cartlist[inx];
var event = new Object();
event["event"] = "w_remove_from_cart";
event["product_id"] = "장바구니 제거 상품에 대한 상품 코드";
event["product_name"] = "장바구니 제거 상품에 대한 상품명";
event["category_id_a"] = "장바구니 제거 상품에 대한 대카테고리 코드";
event["category_name_a"] = "장바구니 제거 상품에 대한 대카테고리 이름";
event["category_id_b"] = "장바구니 제거 상품에 대한 중카테고리 코드";
event["category_name_b"] = "장바구니 제거 상품에 대한 중카테고리 이름";
event["brand_name"] = "장바구니 제거 상품에 대한 브랜드이름";
event["quantity"] = 장바구니 제거 상품의 수량;
productArray.push(event);
}
product["product"] = productArray;
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: product
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event: "w_remove_from_cart",
product: [
{
product_id: "301056226",
product_name: "wool cropped vest (navy)",
category_id_a: "c294",
category_name_a: "women",
category_id_b: "d3775",
category_name_b: "니트웨어",
brand_name: "blank03",
quantity: 1
},
{
product_id: "301053552",
product_name: "white calf_Libra",
category_id_a: "c493",
category_name_a: "men",
category_id_b: "d5783",
category_name_b: "스니커즈",
brand_name: "IMMATERIAL",
quantity: 2
}
]
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method: "logEvent",
data: {
event: "w_remove_from_cart",
product: [
{
product_id: "301056226",
product_name: "wool cropped vest (navy)",
category_id_a: "c294",
category_name_a: "women",
category_id_b: "d3775",
category_name_b: "니트웨어",
brand_name: "blank03",
quantity: 1
},
{
product_id: "301053552",
product_name: "white calf_Libra",
category_id_a: "c493",
category_name_a: "men",
category_id_b: "d5783",
category_name_b: "스니커즈",
brand_name: "IMMATERIAL",
quantity: 2
}
]
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_remove_from_cart");
Dictionary<string, object> product1 = new Dictionary<string, object>();
product1.Add("product_id", "301056226");
product1.Add("product_name", "wool cropped vest (navy)");
product1.Add("category_id_a", "c294");
product1.Add("category_name_a", "women");
product1.Add("category_id_b", "d3775");
product1.Add("category_name_b", "니트웨어");
product1.Add("brand_name", "blank03");
product1.Add("quantity", 1);
Dictionary<string, object> product2 = new Dictionary<string, object>();
product2.Add("product_id", "301053552");
product2.Add("product_name", "white calf_Libra");
product2.Add("category_id_a", "c493");
product2.Add("category_name_a", "men");
product2.Add("category_id_b", "d5783");
product2.Add("category_name_b", "스니커즈");
product2.Add("brand_name", "IMMATERIAL");
product2.Add("quantity", 2);
eventDic.Add("product", product1);
eventDic.Add("product", product2);
DOT.logEvent(eventDic)
구매 완료화면에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
transaction_id
P20154829420, P20154829421
string
주문번호
currency
KRW
string
결제 통화코드
product_id
301056226, 301053552
string
상품 고유코드
product_name
wool cropped vest (navy), white calf_Libra
string
상품명
category_id_a
c294, c493
string
대 카테고리 코드
category_name_a
women, men
string
대 카테고리 명칭
category_id_b
d3775, d5783
string
중 카테고리 코드
category_name_b
니트웨어, 스니커즈
string
중 카테고리 명칭
brand_name
blank03, IMMATERIAL
string
브랜드 명칭
quantity
1, 2
integer
상품 개수
revenue
84550, 518000
double
유저가 실 결제한 금액
Map<String, Object> purchaseMap = new HashMap<>();
purchaseMap.put("transaction_id", "P20154829420");
purchaseMap.put("currency", "KRW");
Map<String, Object> productMap = new HashMap<>();
productMap.put("product_id", "301056226");
productMap.put("product_name", "wool cropped vest (navy)");
productMap.put("category_id_a", "c294");
productMap.put("category_name_a", "women");
productMap.put("category_id_b", "d3775");
productMap.put("category_name_b", "니트웨어");
productMap.put("brand_name", "blank03");
productMap.put("quantity", 1);
productMap.put("revenue", 84550);
purchaseMap.put("product", productMap);
DOT.logPurchase(purchaseMap);
val purchaseMap = mutableMapOf<String,Any>()
purchaseMap["transaction_id"] = "P20154829420"
purchaseMap["currency"] = "KRW"
val productMap = mutableMapOf<String,Any>()
productMap["product_id"] = "301056226"
productMap["product_name"] = "wool cropped vest (navy)"
productMap["category_id_a"] = "c294"
productMap["category_name_a"] = "women"
productMap["category_id_b"] = "d3775"
productMap["category_name_b"] = "니트웨어"
productMap["brand_name"] = "blank03"
productMap["quantity"] = 1
productMap["revenue"] = 84550
purchaseMap["product"] = productMap
DOT.logPurchase(purchaseMap)
let purchase = NSMutableDictionary()
purchase["transaction_id"] = "P20154829420"
purchase["currency"] = "KRW"
var product : [String: Any] = [:]
product["product_id"] = "301056226"
product["product_name"] = "wool cropped vest (navy)"
product["category_id_a"] = "c294"
product["category_name_a"] = "women"
product["category_id_b"] = "d3775"
product["category_name_b"] = "니트웨어"
product["brand_name"] = "blank03"
product["quantity"] = 1
product["revenue"] = 84550
purchase["product"] = product
DOT.logPurchase(purchase)
NSMutableDictionary *purchase = [[NSMutableDictionary alloc] init];
[purchase setValue:@"P20154829420" forKey:@"transaction_id"];
[purchase setValue:@"KRW" forKey:@"currency"];
NSMutableDictionary *product = [[NSMutableDictionary alloc] init];
[product setValue:@"301056226" forKey:@"product_id"];
[product setValue:@"wool cropped vest (navy)" forKey:@"product_name"];
[product setValue:@"c294" forKey:@"category_id_a"];
[product setValue:@"women" forKey:@"category_name_a"];
[product setValue:@"d3775" forKey:@"category_id_b"];
[product setValue:@"니트웨어" forKey:@"category_name_b"];
[product setValue:@"blank03" forKey:@"brand_name"];
[product setValue:[NSNumber numberWithInt:1] forKey:@"quantity"];
[product setValue:[NSNumber numberWithInt:84550] forKey:@"revenue"];
[purchase setValue:product forKey:@"product"];
[DOT logPurchase:purchase];
var purchase = new Object();
purchase["transaction_id"] = "P20154829420";
purchase["currency"] = "KRW";
var product = new Object();
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
product["quantity"] = 1;
product["revenue"] = 84550;
purchase["product"] = product;
DOT.logPurchase(purchase);
var purchase = new Object();
purchase["transaction_id"] = "P20154829420";
purchase["currency"] = "KRW";
var product = new Object();
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
product["quantity"] = 1;
product["revenue"] = 84550;
purchase["product"] = product;
WDOT.logPurchase(purchase);
// .dart 에서 호출 할 때
Map purchase = {};
purchase["transaction_id"] = "P20154829420";
purchase["currency"] = "KRW";
Map product = {};
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
product["quantity"] = 1;
product["revenue"] = 84550;
purchase["product"] = product;
DOT.logPurchase(purchase);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logPurchase",
data: {
transaction_id : "P20154829420",
currency : "KRW",
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03",
quantity : 1,
revenue : 84550
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logPurchase(JSON.stringify({
transaction_id : "TR2020111129420",
currency : "KRW",
product : {
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03",
quantity : 1,
revenue : 84550
}
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logPurchase",
data : {
transaction_id : "TR2020111129420",
currency : "KRW",
product : {
product_id : "301056226",
product_name : "wool cropped vest (navy)",
category_id_a : "c294",
category_name_a : "women",
category_id_b : "d3775",
category_name_b : "니트웨어",
brand_name : "blank03",
quantity : 1,
revenue : 84550
}
}
}));
Dictionary<string, object> purchase = new Dictionary<string, object>();
purchase.Add("transaction_id", "P20154829420");
purchase.Add("currency", "KRW");
Dictionary<string, object> product = new Dictionary<string, object>();
product.Add("product_id", "301056226");
product.Add("product_name", "wool cropped vest (navy)");
product.Add("category_id_a", "c294");
product.Add("category_name_a", "women");
product.Add("category_id_b", "d3775");
product.Add("category_name_b", "니트웨어");
product.Add("brand_name", "blank03");
product.Add("quantity", 1);
product.Add("revenue", 84550);
List<Dictionary<string, object>> productList = new List<Dictionary<string, object>>();
productList.Add(product);
purchase.Add("product", productList);
DOT.logPurchase(purchase);
Map<String, Object> purchaseMap = new HashMap<>();
purchaseMap.put("transaction_id", "P20154829421");
purchaseMap.put("currency", "KRW");
Map<String, Object> productMap1 = new HashMap<>();
productMap1.put("product_id", "301056226");
productMap1.put("product_name", "wool cropped vest (navy)");
productMap1.put("category_id_a", "c294");
productMap1.put("category_name_a", "women");
productMap1.put("category_id_b", "d3775");
productMap1.put("category_name_b", "니트웨어");
productMap1.put("brand_name", "blank03");
productMap1.put("quantity", 1);
productMap1.put("revenue", 84550);
Map<String, Object> productMap2 = new HashMap<>();
productMap2.put("product_id", "301053552");
productMap2.put("product_name", "white calf_Libra");
productMap2.put("category_id_a", "c493");
productMap2.put("category_name_a", "men");
productMap2.put("category_id_b", "d5783");
productMap2.put("category_name_b", "스니커즈");
productMap2.put("brand_name", "IMMATERIAL");
productMap2.put("quantity", 2);
productMap2.put("revenue", 518000);
List<Map<String, Object>> productList = new ArrayList<>();
productList.add(productMap1);
productList.add(productMap2);
purchaseMap.put("product", productList);
DOT.logPurchase(purchaseMap);
val purchaseMap = mutableMapOf<String,Any>()
purchaseMap["transaction_id"] = "P20154829421"
purchaseMap["currency"] = "KRW"
val productMap1 = mutableMapOf<String,Any>()
productMap1["product_id"] = "301056226"
productMap1["product_name"] = "wool cropped vest (navy)"
productMap1["category_id_a"] = "c294"
productMap1["category_name_a"] = "women"
productMap1["category_id_b"] = "d3775"
productMap1["category_name_b"] = "니트웨어"
productMap1["brand_name"] = "lank03"
productMap1["quantity"] = 1
productMap1["revenue"] = 84550
val productMap2 = mutableMapOf<String,Any>()
productMap2["product_id"] = "301053552"
productMap2["product_name"] = "white calf_Libra"
productMap2["category_id_a"] = "c493"
productMap2["category_name_a"] = "men"
productMap2["category_id_b"] = "d5783"
productMap2["category_name_b"] = "스니커즈"
productMap2["brand_name"] = "IMMATERIAL"
productMap2["quantity"] = 2
productMap2["revenue"] = 518000
val productList = ArrayList<Map<String,Any>>()
productList.add(productMap1)
productList.add(productMap2)
purchaseMap["product"] = productList
DOT.logPurchase(purchaseMap)
let purchase = NSMutableDictionary()
purchase["transaction_id"] = "P20154829421"
purchase["currency"] = "KRW"
var product1 : [String: Any] = [:]
product1["product_id"] = "301056226"
product1["product_name"] = "wool cropped vest (navy)"
product1["category_id_a"] = "c294"
product1["category_name_a"] = "women"
product1["category_id_b"] = "d3775"
product1["category_name_b"] = "니트웨어"
product1["brand_name"] = "blank03"
product1["quantity"] = 1
product1["revenue"] = 84550
var product2 : [String: Any] = [:]
product2["product_id"] = "301053552"
product2["product_name"] = "white calf_Libra"
product2["category_id_a"] = "c493"
product2["category_name_a"] = "men"
product2["category_id_b"] = "d5783"
product2["category_name_b"] = "스니커즈"
product2["brand_name"] = "IMMATERIAL"
product2["quantity"] = 2
product2["revenue"] = 518000
var productArray : [Any] = []
productArray.append(product1)
productArray.append(product2)
purchase["product"] = productArray
DOT.logPurchase(purchase)
NSMutableDictionary *purchase = [[NSMutableDictionary alloc] init];
[purchase setValue:@"P20154829420" forKey:@"transaction_id"];
[purchase setValue:@"KRW" forKey:@"currency"];
NSMutableDictionary *product1 = [[NSMutableDictionary alloc] init];
[product1 setValue:@"301056226" forKey:@"product_id"];
[product1 setValue:@"wool cropped vest (navy)" forKey:@"product_name"];
[product1 setValue:@"c294" forKey:@"category_id_a"];
[product1 setValue:@"women" forKey:@"category_name_a"];
[product1 setValue:@"d3775" forKey:@"category_id_b"];
[product1 setValue:@"니트웨어" forKey:@"category_name_b"];
[product1 setValue:@"blank03" forKey:@"brand_name"];
[product1 setValue:[NSNumber numberWithInt:1] forKey:@"quantity"];
[product1 setValue:[NSNumber numberWithInt:84550] forKey:@"revenue"];
NSMutableDictionary *product2 = [[NSMutableDictionary alloc] init];
[product2 setValue:@"301053552" forKey:@"product_id"];
[product2 setValue:@"white calf_Libra" forKey:@"product_name"];
[product2 setValue:@"c493" forKey:@"category_id_a"];
[product2 setValue:@"men" forKey:@"category_name_a"];
[product2 setValue:@"d5783" forKey:@"category_id_b"];
[product2 setValue:@"스니커즈" forKey:@"category_name_b"];
[product2 setValue:@"IMMATERIAL" forKey:@"brand_name"];
[product2 setValue:[NSNumber numberWithInt:2] forKey:@"quantity"];
[product2 setValue:[NSNumber numberWithInt:518000] forKey:@"revenue"];
[purchase setValue:product1 forKey:@"product1"];
[purchase setValue:product2 forKey:@"product2"];
[DOT logPurchase:purchase];
var purchase = new Object();
purchase["transaction_id"] = "P20154829421";
purchase["currency"] = "KRW";
var product1 = new Object();
product1["product_id"] = "301056226";
product1["product_name"] = "wool cropped vest (navy)";
product1["category_id_a"] = "c294";
product1["category_name_a"] = "women";
product1["category_id_b"] = "d3775";
product1["category_name_b"] = "니트웨어";
product1["brand_name"] = "blank03";
product1["quantity"] = 1;
product1["revenue"] = 84550;
var product2 = new Object();
product2["product_id"] = "301053552";
product2["product_name"] = "white calf_Libra";
product2["category_id_a"] = "c493";
product2["category_name_a"] = "men";
product2["category_id_b"] = "d5783";
product2["category_name_b"] = "스니커즈";
product2["brand_name"] = "IMMATERIAL";
product2["quantity"] = 2;
product2["revenue"] = 518000;
var productArray = new Array();
productArray.push(product1);
productArray.push(product2);
purchase["product"] = productArray;
DOT.logPurchase(purchase);
var purchase = new Object();
purchase["transaction_id"] = "P20154829421";
purchase["currency"] = "KRW";
var product1 = new Object();
product1["product_id"] = "301056226";
product1["product_name"] = "wool cropped vest (navy)";
product1["category_id_a"] = "c294";
product1["category_name_a"] = "women";
product1["category_id_b"] = "d3775";
product1["category_name_b"] = "니트웨어";
product1["brand_name"] = "blank03";
product1["quantity"] = 1;
product1["revenue"] = 84550;
var product2 = new Object();
product2["product_id"] = "301053552";
product2["product_name"] = "white calf_Libra";
product2["category_id_a"] = "c493";
product2["category_name_a"] = "men";
product2["category_id_b"] = "d5783";
product2["category_name_b"] = "스니커즈";
product2["brand_name"] = "IMMATERIAL";
product2["quantity"] = 2;
product2["revenue"] = 518000;
var productArray = new Array();
productArray.push(product1);
productArray.push(product2);
purchase["product"] = productArray;
WDOT.logPurchase(purchase);
// .dart 에서 호출 할 때
Map purchase = {};
purchase["transaction_id"] = "P20154829421";
purchase["currency"] = "KRW";
Map product1 = {};
product["product_id"] = "301056226";
product["product_name"] = "wool cropped vest (navy)";
product["category_id_a"] = "c294";
product["category_name_a"] = "women";
product["category_id_b"] = "d3775";
product["category_name_b"] = "니트웨어";
product["brand_name"] = "blank03";
product["quantity"] = 1;
product["revenue"] = 84550;
Map product2 = {};
product2["product_id"] = "301053552";
product2["product_name"] = "white calf_Libra";
product2["category_id_a"] = "c493";
product2["category_name_a"] = "men";
product2["category_id_b"] = "d5783";
product2["category_name_b"] = "스니커즈";
product2["brand_name"] = "IMMATERIAL";
product2["quantity"] = 2;
product2["revenue"] = 518000;
var productArray = [];
productArray.add(product1);
productArray.add(product2);
purchase["product"] = productArray;
DOT.logPurchase(purchase);
// webview 에서 호출 할 때
var purchase = new Object();
purchase["transaction_id"] = "P20154829420";
var productArray = new Array();
for( var inx = 0; inx < purchaselist[구매한 상품 목록].length; inx++){
var purchaseProduct = purchaselist[inx];
var product = new Object();
product["product_id"] = "구매한상품에 대한 상품 코드";
product["product_name"] = "구매한상품의 상품명";
product["category_id_a"] = "구매한상품의 대카테고리 코드";
product["category_name_a"] = "구매한상품의 대카테고리 이름";
product["category_id_b"] = "구매한상품에 대한 중카테고리 코드";
product["category_name_b"] = "구매한상품에 대한 중카테고리 이름";
product["brand_name"] = "구매한상품에 대한 브랜드이름";
product["quantity"] = 1;
product["revenue"] = 84550;
productArray.push(product);
}
purchase["product"] = productArray;
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logPurchase",
data: purchase
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logPurchase(JSON.stringify({
transaction_id: "TR2020111129420",
currency: "KRW",
product: [
{
product_id: "301056226",
product_name: "wool cropped vest (navy)",
category_id_a: "c294",
category_name_a: "women",
category_id_b: "d3775",
category_name_b: "니트웨어",
brand_name: "blank03",
quantity: 1,
revenue: 84550
},
{
product_id: "301053552",
product_name: "white calf_Libra",
category_id_a: "c493",
category_name_a: "men",
category_id_b: "d5783",
category_name_b: "스니커즈",
brand_name: "IMMATERIAL",
quantity: 2,
revenue: 518000
}
]
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method: "logPurchase",
data: {
transaction_id: "TR2020111129420",
currency: "KRW",
product: [
{
product_id: "301056226",
product_name: "wool cropped vest (navy)",
category_id_a: "c294",
category_name_a: "women",
category_id_b: "d3775",
category_name_b: "니트웨어",
brand_name: "blank03",
quantity: 1,
revenue: 84550
},
{
product_id: "301053552",
product_name: "white calf_Libra",
category_id_a: "c493",
category_name_a: "men",
category_id_b: "d5783",
category_name_b: "스니커즈",
brand_name: "IMMATERIAL",
quantity: 2,
revenue: 518000
}
]
}
}));
Dictionary<string, object> purchase = new Dictionary<string, object>();
purchase.Add("transaction_id", "P20154829420");
purchase.Add("currency", "KRW");
Dictionary<string, object> product1 = new Dictionary<string, object>();
product1.Add("product_id", "301056226");
product1.Add("product_name", "wool cropped vest (navy)");
product1.Add("category_id_a", "c294");
product1.Add("category_name_a", "women");
product1.Add("category_id_b", "d3775");
product1.Add("category_name_b", "니트웨어");
product1.Add("brand_name", "blank03");
product1.Add("quantity", 1);
product1.Add("revenue", 84550);
Dictionary<string, object> product2 = new Dictionary<string, object>();
product2.Add("product_id", "301053552");
product2.Add("product_name", "white calf_Libra");
product2.Add("category_id_a", "c493");
product2.Add("category_name_a", "men");
product2.Add("category_id_b", "d5783");
product2.Add("category_name_b", "스니커즈");
product2.Add("brand_name", "IMMATERIAL");
product2.Add("quantity", 2);
product2.Add("revenue", 518000);
List<Dictionary<string, object>> productList = new List<Dictionary<string, object>>();
productList.Add(product1);
productList.Add(product2);
purchase.Add("product", productList);
DOT.logPurchase(purchase);
환불이 완료된 시점에 아래 코드를 추가합니다.
Key
Value 예시
Type
설명
refund_id
R44893
string
환불 고유번호
currency
KRW
string
통화코드
g6
518000
float
유저가 환불받은 금액
Map<String, Object> eventMap = new HashMap<>();
eventMap.put("event", "w_refund");
eventMap.put("refund_id", "R44893");
eventMap.put("currency", "KRW");
eventMap.put("g6", 518000);
DOT.logEvent(eventMap);
val eventMap = mutableMapOf<String,Any>()
eventMap["event"] = "w_refund"
eventMap["refund_id"] = "R44893"
eventMap["currency"] = "KRW"
eventMap["g6"] = 518000
DOT.logEvent(eventMap)
let event = NSMutableDictionary()
event["event"] = "w_refund"
event["refund_id"] = "R44893"
event["currency"] = "KRW"
event["g6"] = 518000
DOT.logEvent(event)
NSMutableDictionary *event = [[NSMutableDictionary alloc] init];
[event setValue:@"w_refund" forKey:@"event"];
[event setValue:@"R44893" forKey:@"refund_id"];
[event setValue:@"KRW" forKey:@"currency"];
[event setValue:[NSNumber numberWithInt:518000] forKey:@"g6"];
[DOT logEvent:event];
var event = new Object();
event["event"] = "w_refund";
event["refund_id"] = "R44893";
event["currency"] = "KRW";
event["g6"] = 518000;
DOT.logEvent(event);
var event = new Object();
event["event"] = "w_refund";
event["refund_id"] = "R44893";
event["currency"] = "KRW";
event["g6"] = 518000;
WDOT.logEvent(event);
// .dart 에서 호출 할 때
Map event = {};
event["event"] = "w_refund";
event["refund_id"] = "R44893";
event["currency"] = "KRW";
event["g6"] = 518000;
DOT.logEvent(event);
// webview 에서 호출 할 때
DotFlutterDataBridge.postMessage(JSON.stringify({
method : "logEvent",
data: {
event : "w_refund",
refund_id : "R44893",
currency : "KRW",
g6 : 518000
}
}));
// .js 에서 호출 할 때
NativeModules.DotReactBridge.logEvent(JSON.stringify({
event : "w_refund",
refund_id = "R44893",
currency" = "KRW",
g6 = 518000
}));
// webview 에서 호출 할 때
window.ReactNativeWebView.postMessage(JSON.stringify({
method:"logEvent",
data : {
event : "w_refund",
refund_id = "R44893",
currency" = "KRW",
g6 = 518000
}
}));
Dictionary<string, object> eventDic = new Dictionary<string, object>();
eventDic.Add("event", "w_refund");
eventDic.Add("refund_id", "R44893");
eventDic.Add("currency", "KRW");
eventDic.Add("g6", 518000);
DOT.logEvent(eventDic);