E-ticaret kullanıcıların ürünlerinizle etkileşimini ölçmenizi sağlar. kullanıcıların Ürün (öğe) listesi gibi etkileşimler dahil olmak üzere alışveriş deneyimleri görüntüleme sayısı, ürün listesi tıklamaları, ürün ayrıntılarını görüntüleme, bir ürünün bir ödeme sürecini başlatma, satın alma işlemleri ve geri ödemeler.
E-ticaret web uygulamalarını uygulamayla ilgili ayrıntılar için Google Analytics E-ticaret başlıklı makaleyi inceleyin.
Başlamadan önce
Projenizi oluşturduğunuzdan ve Analytics'e açıklandığı şekilde erişebildiğinizden emin olun Analytics'i Kullanmaya Başlama başlıklı makaleyi inceleyin. E-ticaret Ölçüm için Firebase projenizi bir Analytics ve uygulamanızda Android SDK v17.3.0 veya iOS v6.20.0 ve sonraki sürümleri olması gerekir.
Uygulama
Tipik bir e-ticaret uygulaması aşağıdaki işlemleri ölçer:
- Listeden ürün seçme
- Ürün ayrıntılarını göster
- Alışveriş sepetine ürün ekleme/sepetten kaldırma
- Ödeme sürecini başlatma
- Satın alma veya geri ödeme
- Promosyonları uygulama
Bu işlemlerin merkezinde ürünler yer alıyor. Ürünler, Belirlenen e-ticaret etkinliklerine eklenebilecek öğe dizisi. Şunları da ekleyebilirsiniz: öğe dizisinde, en fazla 27 özel parametre verilen parametrelere ek olarak oluşturulur.
Aşağıdaki örnek, bu rehberde değineceğiz.
Swift
// A pair of jeggings var jeggings: [String: Any] = [ AnalyticsParameterItemID: "SKU_123", AnalyticsParameterItemName: "jeggings", AnalyticsParameterItemCategory: "pants", AnalyticsParameterItemVariant: "black", AnalyticsParameterItemBrand: "Google", AnalyticsParameterPrice: 9.99, ] // A pair of boots var boots: [String: Any] = [ AnalyticsParameterItemID: "SKU_456", AnalyticsParameterItemName: "boots", AnalyticsParameterItemCategory: "shoes", AnalyticsParameterItemVariant: "brown", AnalyticsParameterItemBrand: "Google", AnalyticsParameterPrice: 24.99, ] // A pair of socks var socks: [String: Any] = [ AnalyticsParameterItemID: "SKU_789", AnalyticsParameterItemName: "ankle_socks", AnalyticsParameterItemCategory: "socks", AnalyticsParameterItemVariant: "red", AnalyticsParameterItemBrand: "Google", AnalyticsParameterPrice: 5.99, ]
Objective-C
// A pair of jeggings NSMutableDictionary *jeggings = [@{ kFIRParameterItemID: @"SKU_123", kFIRParameterItemName: @"jeggings", kFIRParameterItemCategory: @"pants", kFIRParameterItemVariant: @"black", kFIRParameterItemBrand: @"Google", kFIRParameterPrice: @9.99, } mutableCopy]; // A pair of boots NSMutableDictionary *boots = [@{ kFIRParameterItemID: @"SKU_456", kFIRParameterItemName: @"boots", kFIRParameterItemCategory: @"shoes", kFIRParameterItemVariant: @"brown", kFIRParameterItemBrand: @"Google", kFIRParameterPrice: @24.99, } mutableCopy]; // A pair of socks NSMutableDictionary *socks = [@{ kFIRParameterItemID: @"SKU_789", kFIRParameterItemName: @"ankle_socks", kFIRParameterItemCategory: @"socks", kFIRParameterItemVariant: @"red", kFIRParameterItemBrand: @"Google", kFIRParameterPrice: @5.99, } mutableCopy];
Kotlin+KTX
val itemJeggings = Bundle().apply { putString(FirebaseAnalytics.Param.ITEM_ID, "SKU_123") putString(FirebaseAnalytics.Param.ITEM_NAME, "jeggings") putString(FirebaseAnalytics.Param.ITEM_CATEGORY, "pants") putString(FirebaseAnalytics.Param.ITEM_VARIANT, "black") putString(FirebaseAnalytics.Param.ITEM_BRAND, "Google") putDouble(FirebaseAnalytics.Param.PRICE, 9.99) } val itemBoots = Bundle().apply { putString(FirebaseAnalytics.Param.ITEM_ID, "SKU_456") putString(FirebaseAnalytics.Param.ITEM_NAME, "boots") putString(FirebaseAnalytics.Param.ITEM_CATEGORY, "shoes") putString(FirebaseAnalytics.Param.ITEM_VARIANT, "brown") putString(FirebaseAnalytics.Param.ITEM_BRAND, "Google") putDouble(FirebaseAnalytics.Param.PRICE, 24.99) } val itemSocks = Bundle().apply { putString(FirebaseAnalytics.Param.ITEM_ID, "SKU_789") putString(FirebaseAnalytics.Param.ITEM_NAME, "ankle_socks") putString(FirebaseAnalytics.Param.ITEM_CATEGORY, "socks") putString(FirebaseAnalytics.Param.ITEM_VARIANT, "red") putString(FirebaseAnalytics.Param.ITEM_BRAND, "Google") putDouble(FirebaseAnalytics.Param.PRICE, 5.99) }
Java
Bundle itemJeggings = new Bundle(); itemJeggings.putString(FirebaseAnalytics.Param.ITEM_ID, "SKU_123"); itemJeggings.putString(FirebaseAnalytics.Param.ITEM_NAME, "jeggings"); itemJeggings.putString(FirebaseAnalytics.Param.ITEM_CATEGORY, "pants"); itemJeggings.putString(FirebaseAnalytics.Param.ITEM_VARIANT, "black"); itemJeggings.putString(FirebaseAnalytics.Param.ITEM_BRAND, "Google"); itemJeggings.putDouble(FirebaseAnalytics.Param.PRICE, 9.99); Bundle itemBoots = new Bundle(); itemBoots.putString(FirebaseAnalytics.Param.ITEM_ID, "SKU_456"); itemBoots.putString(FirebaseAnalytics.Param.ITEM_NAME, "boots"); itemBoots.putString(FirebaseAnalytics.Param.ITEM_CATEGORY, "shoes"); itemBoots.putString(FirebaseAnalytics.Param.ITEM_VARIANT, "brown"); itemBoots.putString(FirebaseAnalytics.Param.ITEM_BRAND, "Google"); itemBoots.putDouble(FirebaseAnalytics.Param.PRICE, 24.99); Bundle itemSocks = new Bundle(); itemSocks.putString(FirebaseAnalytics.Param.ITEM_ID, "SKU_789"); itemSocks.putString(FirebaseAnalytics.Param.ITEM_NAME, "ankle_socks"); itemSocks.putString(FirebaseAnalytics.Param.ITEM_CATEGORY, "socks"); itemSocks.putString(FirebaseAnalytics.Param.ITEM_VARIANT, "red"); itemSocks.putString(FirebaseAnalytics.Param.ITEM_BRAND, "Google"); itemSocks.putDouble(FirebaseAnalytics.Param.PRICE, 5.99);
Web
// A pair of jeggings const item_jeggings = { item_id: 'SKU_123', item_name: 'jeggings', item_category: 'pants', item_variant: 'black', item_brand: 'Google', price: 9.99 }; // A pair of boots const item_boots = { item_id: 'SKU_456', item_name: 'boots', item_category: 'shoes', item_variant: 'brown', item_brand: 'Google', price: 24.99 }; // A pair of socks const item_socks = { item_id: 'SKU_789', item_name: 'ankle_socks', item_category: 'socks', item_variant: 'red', item_brand: 'Google', price: 5.99 };
Web
// A pair of jeggings const item_jeggings = { item_id: 'SKU_123', item_name: 'jeggings', item_category: 'pants', item_variant: 'black', item_brand: 'Google', price: 9.99 }; // A pair of boots const item_boots = { item_id: 'SKU_456', item_name: 'boots', item_category: 'shoes', item_variant: 'brown', item_brand: 'Google', price: 24.99 }; // A pair of socks const item_socks = { item_id: 'SKU_789', item_name: 'ankle_socks', item_category: 'socks', item_variant: 'red', item_brand: 'Google', price: 5.99 };
Dart
// A pair of jeggings
final jeggings = AnalyticsEventItem(
itemId: "SKU_123",
itemName: "jeggings",
itemCategory: "pants",
itemVariant: "black",
itemBrand: "Google",
price: 9.99,
);
// A pair of boots
final boots = AnalyticsEventItem(
itemId: "SKU_456",
itemName: "boots",
itemCategory: "shoes",
itemVariant: "brown",
itemBrand: "Google",
price: 24.99,
);
// A pair of socks
final socks = AnalyticsEventItem(
itemId: "SKU_789",
itemName: "ankle_socks",
itemCategory: "socks",
itemVariant: "red",
itemBrand: "Google",
price: 5.99,
);
Listeden ürün seçin
Kullanıcıya sonuç listesi sunulduğunda bir view_item_list
etkinliği kaydedin
dahil edilen ürünleri içeren items
dizi parametresi dahil edilir.
Swift
// Add item indexes jeggings[AnalyticsParameterIndex] = 1 boots[AnalyticsParameterIndex] = 2 socks[AnalyticsParameterIndex] = 3 // Prepare ecommerce parameters var itemList: [String: Any] = [ AnalyticsParameterItemListID: "L001", AnalyticsParameterItemListName: "Related products", ] // Add items array itemList[AnalyticsParameterItems] = [jeggings, boots, socks] // Log view item list event Analytics.logEvent(AnalyticsEventViewItemList, parameters: itemList)
Objective-C
// Add item indexes jeggings[kFIRParameterIndex] = @1; boots[kFIRParameterIndex] = @2; socks[kFIRParameterIndex] = @3; // Prepare ecommerce parameters NSMutableDictionary *itemList = [@{ kFIRParameterItemListID: @"L001", kFIRParameterItemListName: @"Related products", } mutableCopy]; // Add items array itemList[kFIRParameterItems] = @[jeggings, boots, socks]; // Log view item list event [FIRAnalytics logEventWithName:kFIREventViewItemList parameters:itemList];
Kotlin+KTX
val itemJeggingsWithIndex = Bundle(itemJeggings).apply { putLong(FirebaseAnalytics.Param.INDEX, 1) } val itemBootsWithIndex = Bundle(itemBoots).apply { putLong(FirebaseAnalytics.Param.INDEX, 2) } val itemSocksWithIndex = Bundle(itemSocks).apply { putLong(FirebaseAnalytics.Param.INDEX, 3) } firebaseAnalytics.logEvent(FirebaseAnalytics.Event.VIEW_ITEM_LIST) { param(FirebaseAnalytics.Param.ITEM_LIST_ID, "L001") param(FirebaseAnalytics.Param.ITEM_LIST_NAME, "Related products") param( FirebaseAnalytics.Param.ITEMS, arrayOf(itemJeggingsWithIndex, itemBootsWithIndex, itemSocksWithIndex), ) }
Java
Bundle itemJeggingsWithIndex = new Bundle(itemJeggings); itemJeggingsWithIndex.putLong(FirebaseAnalytics.Param.INDEX, 1); Bundle itemBootsWithIndex = new Bundle(itemBoots); itemBootsWithIndex.putLong(FirebaseAnalytics.Param.INDEX, 2); Bundle itemSocksWithIndex = new Bundle(itemSocks); itemSocksWithIndex.putLong(FirebaseAnalytics.Param.INDEX, 3); Bundle viewItemListParams = new Bundle(); viewItemListParams.putString(FirebaseAnalytics.Param.ITEM_LIST_ID, "L001"); viewItemListParams.putString(FirebaseAnalytics.Param.ITEM_LIST_NAME, "Related products"); viewItemListParams.putParcelableArray(FirebaseAnalytics.Param.ITEMS, new Parcelable[]{itemJeggingsWithIndex, itemBootsWithIndex, itemSocksWithIndex}); mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.VIEW_ITEM_LIST, viewItemListParams);
Web
import { getAnalytics, logEvent } from "firebase/analytics"; // Prepare ecommerce params const params1 = { item_list_id: 'L001', item_list_name: 'Related products', items: [item_jeggings, item_boots, item_socks] }; // Log event const analytics = getAnalytics(); logEvent(analytics, 'view_item_list', params1);
Web
// Prepare ecommerce params const params1 = { item_list_id: 'L001', item_list_name: 'Related products', items: [item_jeggings, item_boots, item_socks] }; // Log event firebase.analytics().logEvent(firebase.analytics.EventName.VIEW_ITEM_LIST, params1);
Dart
await FirebaseAnalytics.instance.logViewItemList(
itemListId: "L001",
itemListName: "Related products",
items: [jeggings, boots, socks],
);
Kullanıcı listeden belirli bir ürünü seçtikten sonra select_item
kaydedin.
items
dizi parametresinde seçili ürünle ilgili bir etkinlik.
Swift
// Prepare ecommerce parameters var selectedItem: [String: Any] = [ AnalyticsParameterItemListID: "L001", AnalyticsParameterItemListName: "Related products", ] // Add items array selectedItem[AnalyticsParameterItems] = [jeggings] // Log select item event Analytics.logEvent(AnalyticsEventSelectItem, parameters: selectedItem)
Objective-C
// Prepare ecommerce parameters NSMutableDictionary *selectedItem = [@{ kFIRParameterItemListID: @"L001", kFIRParameterItemListName: @"Related products", } mutableCopy]; // Add items array selectedItem[kFIRParameterItems] = @[jeggings]; // Log select item event [FIRAnalytics logEventWithName:kFIREventSelectItem parameters:selectedItem];
Kotlin+KTX
firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) { param(FirebaseAnalytics.Param.ITEM_LIST_ID, "L001") param(FirebaseAnalytics.Param.ITEM_LIST_NAME, "Related products") param(FirebaseAnalytics.Param.ITEMS, arrayOf(itemJeggings)) }
Java
Bundle selectItemParams = new Bundle(); selectItemParams.putString(FirebaseAnalytics.Param.ITEM_LIST_ID, "L001"); selectItemParams.putString(FirebaseAnalytics.Param.ITEM_LIST_NAME, "Related products"); selectItemParams.putParcelableArray(FirebaseAnalytics.Param.ITEMS, new Parcelable[]{itemJeggings}); mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM, selectItemParams);
Web
import { getAnalytics, logEvent } from "firebase/analytics"; // Prepare ecommerce event params const params2 = { item_list_id: 'L001', item_list_name: 'Related products', items: [item_jeggings] }; // Log event const analytics = getAnalytics(); logEvent(analytics, 'select_item', params2);
Web
// Prepare ecommerce event params const params2 = { item_list_id: 'L001', item_list_name: 'Related products', items: [item_jeggings] }; // Log event firebase.analytics().logEvent(firebase.analytics.EventName.SELECT_ITEM, params2);
Dart
await FirebaseAnalytics.instance.logSelectItem(
itemListId: "L001",
itemListName: "Related products",
items: [jeggings],
);
Ürün ayrıntılarını göster
Ürün ayrıntılarının kaç kez görüntülendiğini ölçmek için bir view_item
etkinliği kaydedin
Kullanıcı bir ürünün ayrıntılar ekranını görüntülediğinde.
Swift
// Prepare ecommerce parameters var productDetails: [String: Any] = [ AnalyticsParameterCurrency: "USD", AnalyticsParameterValue: 9.99 ] // Add items array productDetails[AnalyticsParameterItems] = [jeggings] // Log view item event Analytics.logEvent(AnalyticsEventViewItem, parameters: productDetails)
Objective-C
// Prepare ecommerce parameters NSMutableDictionary *productDetails = [@{ kFIRParameterCurrency: @"USD", kFIRParameterValue: @9.99 } mutableCopy]; // Add items array productDetails[kFIRParameterItems] = @[jeggings]; // Log view item event [FIRAnalytics logEventWithName:kFIREventViewItem parameters:productDetails];
Kotlin+KTX
firebaseAnalytics.logEvent(FirebaseAnalytics.Event.VIEW_ITEM) { param(FirebaseAnalytics.Param.CURRENCY, "USD") param(FirebaseAnalytics.Param.VALUE, 9.99) param(FirebaseAnalytics.Param.ITEMS, arrayOf(itemJeggings)) }
Java
Bundle viewItemParams = new Bundle(); viewItemParams.putString(FirebaseAnalytics.Param.CURRENCY, "USD"); viewItemParams.putDouble(FirebaseAnalytics.Param.VALUE, 9.99); viewItemParams.putParcelableArray(FirebaseAnalytics.Param.ITEMS, new Parcelable[]{itemJeggings}); mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.VIEW_ITEM, viewItemParams);
Web
import { getAnalytics, logEvent } from "firebase/analytics"; // Prepare ecommerce event params const params3 = { currency: 'USD', value: 9.99, items: [item_jeggings] }; // Log event const analytics = getAnalytics(); logEvent(analytics, 'view_item', params3);
Web
// Prepare ecommerce event params const params3 = { currency: 'USD', value: 9.99, items: [item_jeggings] }; // Log event firebase.analytics().logEvent(firebase.analytics.EventName.VIEW_ITEM, params3);
Dart
await FirebaseAnalytics.instance.logViewItem(
currency: 'USD',
value: 9.99,
items: [jeggings],
);
Bir ürünü alışveriş sepetine ekleme veya sepetten kaldırma
Günlük kaydı yaparak istek listesine veya sepete eklenen bir ürünü ölçün
Alakalı olan sırasıyla add_to_wishlist
veya add_to_cart
etkinliği
items
dizisi parametresindeki ürünler.
Swift
// Specify order quantity jeggings[AnalyticsParameterQuantity] = 2 // Prepare item detail params var itemDetails: [String: Any] = [ AnalyticsParameterCurrency: "USD", AnalyticsParameterValue: 19.98 ] // Add items itemDetails[AnalyticsParameterItems] = [jeggings] // Log an event when product is added to wishlist Analytics.logEvent(AnalyticsEventAddToWishlist, parameters: itemDetails) // Log an event when product is added to cart Analytics.logEvent(AnalyticsEventAddToCart, parameters: itemDetails)
Objective-C
// Specify order quantity jeggings[kFIRParameterQuantity] = @2; // Prepare item detail params NSMutableDictionary *itemDetails = [@{ kFIRParameterCurrency: @"USD", kFIRParameterValue: @19.98 } mutableCopy]; // Add items itemDetails[kFIRParameterItems] = @[jeggings]; // Log an event when product is added to wishlist [FIRAnalytics logEventWithName:kFIREventAddToWishlist parameters:itemDetails]; // Log an event when product is added to cart [FIRAnalytics logEventWithName:kFIREventAddToCart parameters:itemDetails];
Kotlin+KTX
val itemJeggingsWishlist = Bundle(itemJeggings).apply { putLong(FirebaseAnalytics.Param.QUANTITY, 2) } firebaseAnalytics.logEvent(FirebaseAnalytics.Event.ADD_TO_WISHLIST) { param(FirebaseAnalytics.Param.CURRENCY, "USD") param(FirebaseAnalytics.Param.VALUE, 2 * 9.99) param(FirebaseAnalytics.Param.ITEMS, arrayOf(itemJeggingsWishlist)) }
Java
Bundle itemJeggingsWishlist = new Bundle(itemJeggings); itemJeggingsWishlist.putLong(FirebaseAnalytics.Param.QUANTITY, 2); Bundle addToWishlistParams = new Bundle(); addToWishlistParams.putString(FirebaseAnalytics.Param.CURRENCY, "USD"); addToWishlistParams.putDouble(FirebaseAnalytics.Param.VALUE, 2 * 9.99); addToWishlistParams.putParcelableArray(FirebaseAnalytics.Param.ITEMS, new Parcelable[]{itemJeggingsWishlist}); mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.ADD_TO_WISHLIST, addToWishlistParams);
Web
import { getAnalytics, logEvent } from "firebase/analytics"; // Specify order quantity const item_jeggings_quantity = { ...item_jeggings, quantity: 2 }; // Prepare ecommerce bundle const params4 = { currency: 'USD', value: 19.98, items: [item_jeggings_quantity] }; // Log event when a product is added to a wishlist const analytics = getAnalytics(); logEvent(analytics, 'add_to_wishlist', params4); // Log event when a product is added to the cart logEvent(analytics, 'add_to_cart', params4);
Web
// Specify order quantity const item_jeggings_quantity = { ...item_jeggings, quantity: 2 }; // Prepare ecommerce bundle const params4 = { currency: 'USD', value: 19.98, items: [item_jeggings_quantity] }; // Log event when a product is added to a wishlist firebase.analytics().logEvent(firebase.analytics.EventName.ADD_TO_WISHLIST, params4); // Log event when a product is added to the cart firebase.analytics().logEvent(firebase.analytics.EventName.ADD_TO_CART, params4);
Dart
final jeggingsWithQuantity = AnalyticsEventItem(
itemId: jeggings.itemId,
itemName: jeggings.itemName,
itemCategory: jeggings.itemCategory,
itemVariant: jeggings.itemVariant,
itemBrand: jeggings.itemBrand,
price: jeggings.price,
quantity: 2,
);
await FirebaseAnalytics.instance.logAddToWishlist(
currency: 'USD',
value: 19.98,
items: [jeggingsWithQuantity],
);
await FirebaseAnalytics.instance.logAddToCart(
currency: 'USD',
value: 19.98,
items: [jeggingsWithQuantity],
);
Kullanıcı daha sonra alışveriş sepetini görüntülediğinde view_cart
etkinliğini
Alışveriş sepetinde items
var.
Swift
// Specify order quantity jeggings[AnalyticsParameterQuantity] = 2 boots[AnalyticsParameterQuantity] = 1 // Prepare order parameters var orderParameters: [String: Any] = [ AnalyticsParameterCurrency: "USD", AnalyticsParameterValue: 44.97 ] // Add items array orderParameters[AnalyticsParameterItems] = [jeggings, boots] // Log event when cart is viewed Analytics.logEvent(AnalyticsEventViewCart, parameters: orderParameters)
Objective-C
// Specify order quantity jeggings[kFIRParameterQuantity] = @2; boots[kFIRParameterQuantity] = @1; // Prepare order parameters NSMutableDictionary *orderParameters = [@{ kFIRParameterCurrency: @"USD", kFIRParameterValue: @44.97 } mutableCopy]; // Add items array orderParameters[kFIRParameterItems] = @[jeggings, boots]; // Log event when cart is viewed [FIRAnalytics logEventWithName:kFIREventViewCart parameters:orderParameters];
Kotlin+KTX
val itemJeggingsCart = Bundle(itemJeggings).apply { putLong(FirebaseAnalytics.Param.QUANTITY, 2) } val itemBootsCart = Bundle(itemBoots).apply { putLong(FirebaseAnalytics.Param.QUANTITY, 1) } firebaseAnalytics.logEvent(FirebaseAnalytics.Event.VIEW_CART) { param(FirebaseAnalytics.Param.CURRENCY, "USD") param(FirebaseAnalytics.Param.VALUE, 2 * 9.99 + 1 * 24.99) param(FirebaseAnalytics.Param.ITEMS, arrayOf(itemJeggingsCart, itemBootsCart)) }
Java
Bundle itemJeggingsCart = new Bundle(itemJeggings); itemJeggingsCart.putLong(FirebaseAnalytics.Param.QUANTITY, 2); Bundle itemBootsCart = new Bundle(itemBoots); itemBootsCart.putLong(FirebaseAnalytics.Param.QUANTITY, 1); Bundle viewCartParams = new Bundle(); viewCartParams.putString(FirebaseAnalytics.Param.CURRENCY, "USD"); viewCartParams.putDouble(FirebaseAnalytics.Param.VALUE, (2 * 9.99) + (1 * 24.99)); viewCartParams.putParcelableArray(FirebaseAnalytics.Param.ITEMS, new Parcelable[]{itemJeggingsCart, itemBootsCart}); mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.VIEW_CART, viewCartParams);
Web
import { getAnalytics, logEvent } from "firebase/analytics"; // Specify order quantity const item_jeggings_quantity = { ...item_jeggings, quantity: 2 }; const item_boots_quantity = { ...item_boots, quantity: 1 }; // Prepare ecommerce params const params5 = { currency: 'USD', value: 44.97, items: [item_jeggings_quantity, item_boots_quantity] }; // Log event when the cart is viewed const analytics = getAnalytics(); logEvent(analytics, 'view_cart', params5);
Web
// Specify order quantity const item_jeggings_quantity = { ...item_jeggings, quantity: 2 }; const item_boots_quantity = { ...item_boots, quantity: 1 }; // Prepare ecommerce params const params5 = { currency: 'USD', value: 44.97, items: [item_jeggings_quantity, item_boots_quantity] }; // Log event when the cart is viewed firebase.analytics().logEvent(firebase.analytics.EventName.VIEW_CART, params5);
Dart
await FirebaseAnalytics.instance.logViewCart(
currency: 'USD',
value: 19.98,
items: [jeggingsWithQuantity],
);
Kullanıcının alışveriş sepetinden bir ürünü kaldırdığı durumları ölçmek için
remove_from_cart
etkinliği.
Swift
// Specify removal quantity boots[AnalyticsParameterQuantity] = 1 // Prepare params var removeParams: [String: Any] = [ AnalyticsParameterCurrency: "USD", AnalyticsParameterValue: 24.99 ] // Add items removeParams[AnalyticsParameterItems] = [boots] // Log removal event Analytics.logEvent(AnalyticsEventRemoveFromCart, parameters: removeParams)
Objective-C
// Specify removal quantity boots[kFIRParameterQuantity] = @1; // Prepare params NSMutableDictionary *removeParams = [@{ kFIRParameterCurrency: @"USD", kFIRParameterValue: @24.99 } mutableCopy]; // Add items removeParams[kFIRParameterItems] = @[boots]; // Log removal event [FIRAnalytics logEventWithName:kFIREventRemoveFromCart parameters:removeParams];
Kotlin+KTX
firebaseAnalytics.logEvent(FirebaseAnalytics.Event.REMOVE_FROM_CART) { param(FirebaseAnalytics.Param.CURRENCY, "USD") param(FirebaseAnalytics.Param.VALUE, 1 * 24.99) param(FirebaseAnalytics.Param.ITEMS, arrayOf(itemBootsCart)) }
Java
Bundle removeCartParams = new Bundle(); removeCartParams.putString(FirebaseAnalytics.Param.CURRENCY, "USD"); removeCartParams.putDouble(FirebaseAnalytics.Param.VALUE, (1 * 24.99)); removeCartParams.putParcelableArray(FirebaseAnalytics.Param.ITEMS, new Parcelable[]{itemBootsCart}); mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.REMOVE_FROM_CART, removeCartParams);
Web
import { getAnalytics, logEvent } from "firebase/analytics"; // Prepare ecommerce params const params6 = { currency: 'USD', value: 24.99, items: [item_jeggings] }; // Log event const analytics = getAnalytics(); logEvent(analytics, 'remove_from_cart', params6);
Web
// Prepare ecommerce params const params6 = { currency: 'USD', value: 24.99, items: [item_jeggings] }; // Log event firebase.analytics().logEvent(firebase.analytics.EventName.REMOVE_FROM_CART, params6);
Dart
final jeggingsWithQuantity = AnalyticsEventItem(
itemId: jeggings.itemId,
itemName: jeggings.itemName,
itemCategory: jeggings.itemCategory,
itemVariant: jeggings.itemVariant,
itemBrand: jeggings.itemBrand,
price: jeggings.price,
quantity: 1,
);
await FirebaseAnalytics.instance.logRemoveFromCart(
currency: 'USD',
value: 9.99,
items: [jeggingsWithQuantity],
);
Ödeme sürecini başlatma
Bir begin_checkout
etkinliği kaydederek ödeme işleminin ilk adımını ölçün
ilgili alanlarla tanımlanmış bir veya daha fazla items
ile. Kupon,
bu aşamada etkinliğe ekleyerek veya
belirli bir öğeyi items
dizisindeki belirli öğelere ekleyerek düzenleyebilirsiniz.
Swift
// Prepare checkout params var checkoutParams: [String: Any] = [ AnalyticsParameterCurrency: "USD", AnalyticsParameterValue: 14.98, AnalyticsParameterCoupon: "SUMMER_FUN" ]; // Add items checkoutParams[AnalyticsParameterItems] = [jeggings] // Log checkout event Analytics.logEvent(AnalyticsEventBeginCheckout, parameters: checkoutParams)
Objective-C
// Prepare checkout params NSMutableDictionary *checkoutParams = [@{ kFIRParameterCurrency: @"USD", kFIRParameterValue: @14.98, kFIRParameterCoupon: @"SUMMER_FUN" } mutableCopy]; // Add items checkoutParams[kFIRParameterItems] = @[jeggings]; // Log checkout event [FIRAnalytics logEventWithName:kFIREventBeginCheckout parameters:checkoutParams];
Kotlin+KTX
firebaseAnalytics.logEvent(FirebaseAnalytics.Event.BEGIN_CHECKOUT) { param(FirebaseAnalytics.Param.CURRENCY, "USD") param(FirebaseAnalytics.Param.VALUE, 14.98) param(FirebaseAnalytics.Param.COUPON, "SUMMER_FUN") param(FirebaseAnalytics.Param.ITEMS, arrayOf(itemJeggingsCart)) }
Java
Bundle beginCheckoutParams = new Bundle(); beginCheckoutParams.putString(FirebaseAnalytics.Param.CURRENCY, "USD"); beginCheckoutParams.putDouble(FirebaseAnalytics.Param.VALUE, 14.98); beginCheckoutParams.putString(FirebaseAnalytics.Param.COUPON, "SUMMER_FUN"); beginCheckoutParams.putParcelableArray(FirebaseAnalytics.Param.ITEMS, new Parcelable[]{itemJeggingsCart}); mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.BEGIN_CHECKOUT, beginCheckoutParams);
Web
import { getAnalytics, logEvent } from "firebase/analytics"; // Prepare ecommerce params const params7 = { currency: 'USD', value: 14.98, // Total Revenue coupon: 'SUMMER_FUN', items: [item_jeggings] }; // Log event const analytics = getAnalytics(); logEvent(analytics, 'begin_checkout', params7);
Web
// Prepare ecommerce params const params7 = { currency: 'USD', value: 14.98, // Total Revenue coupon: 'SUMMER_FUN', items: [item_jeggings] }; // Log event firebase.analytics().logEvent(firebase.analytics.EventName.BEGIN_CHECKOUT, params7);
Dart
await FirebaseAnalytics.instance.logBeginCheckout(
currency: 'USD',
value: 15.98, // Discount applied.
coupon: "SUMMER_FUN",
items: [jeggingsWithQuantity],
);
Kullanıcı ödeme işleminde bir sonraki adıma geçip kargo bilgilerini eklediğinde
add_shipping_info
etkinliği kaydedin. shipping_tier
parametresini kullanın
kullanıcının teslimat seçeneğini (ör. "Ground", "Air" veya "Next-day") belirtmek için kullanılır.
Swift
// Prepare shipping params var shippingParams: [String: Any] = [ AnalyticsParameterCurrency: "USD", AnalyticsParameterValue: 14.98, AnalyticsParameterCoupon: "SUMMER_FUN", AnalyticsParameterShippingTier: "Ground" ] // Add items shippingParams[AnalyticsParameterItems] = [jeggings] // Log added shipping info event Analytics.logEvent(AnalyticsEventAddShippingInfo, parameters: shippingParams)
Objective-C
// Prepare shipping params NSMutableDictionary *shippingParams = [@{ kFIRParameterCurrency: @"USD", kFIRParameterValue: @14.98, kFIRParameterCoupon: @"SUMMER_FUN", kFIRParameterShippingTier: @"Ground" } mutableCopy]; // Add items shippingParams[kFIRParameterItems] = @[jeggings]; // Log added shipping info event [FIRAnalytics logEventWithName:kFIREventAddShippingInfo parameters:shippingParams];
Kotlin+KTX
firebaseAnalytics.logEvent(FirebaseAnalytics.Event.ADD_SHIPPING_INFO) { param(FirebaseAnalytics.Param.CURRENCY, "USD") param(FirebaseAnalytics.Param.VALUE, 14.98) param(FirebaseAnalytics.Param.COUPON, "SUMMER_FUN") param(FirebaseAnalytics.Param.SHIPPING_TIER, "Ground") param(FirebaseAnalytics.Param.ITEMS, arrayOf(itemJeggingsCart)) }
Java
Bundle addShippingParams = new Bundle(); addShippingParams.putString(FirebaseAnalytics.Param.CURRENCY, "USD"); addShippingParams.putDouble(FirebaseAnalytics.Param.VALUE, 14.98); addShippingParams.putString(FirebaseAnalytics.Param.COUPON, "SUMMER_FUN"); addShippingParams.putString(FirebaseAnalytics.Param.SHIPPING_TIER, "Ground"); addShippingParams.putParcelableArray(FirebaseAnalytics.Param.ITEMS, new Parcelable[]{itemJeggingsCart}); mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.ADD_SHIPPING_INFO, addShippingParams);
Web
import { getAnalytics, logEvent } from "firebase/analytics"; // Prepare ecommerce params const params8 = { currency: 'USD', value: 14.98, // Total Revenue coupon: 'SUMMER_FUN', shipping_tier: 'Ground', items: [item_jeggings] }; // Log event const analytics = getAnalytics(); logEvent(analytics, 'add_shipping_info', params8);
Web
// Prepare ecommerce params const params8 = { currency: 'USD', value: 14.98, // Total Revenue coupon: 'SUMMER_FUN', shipping_tier: 'Ground', items: [item_jeggings] }; // Log event firebase.analytics().logEvent(firebase.analytics.EventName.ADD_SHIPPING_INFO, params8);
Dart
await FirebaseAnalytics.instance.logAddShippingInfo(
currency: 'USD',
value: 15.98,
coupon: "SUMMER_FUN",
shippingTier: "Ground",
items: [jeggingsWithQuantity],
);
Kullanıcı ödeme bilgilerini gönderdiğinde add_payment_info
kaydedin. Eğer
uygulanabilir, seçilen yöntem için bu etkinliğe payment_type
ekleyin
bir kontrol noktası
görevi görebilir.
Swift
// Prepare payment params var paymentParams: [String: Any] = [ AnalyticsParameterCurrency: "USD", AnalyticsParameterValue: 14.98, AnalyticsParameterCoupon: "SUMMER_FUN", AnalyticsParameterPaymentType: "Visa" ] // Add items paymentParams[AnalyticsParameterItems] = [jeggings] // Log added payment info event Analytics.logEvent(AnalyticsEventAddPaymentInfo, parameters: paymentParams)
Objective-C
// Prepare payment params NSMutableDictionary *paymentParams = [@{ kFIRParameterCurrency: @"USD", kFIRParameterValue: @14.98, kFIRParameterCoupon: @"SUMMER_FUN", kFIRParameterPaymentType: @"Visa" } mutableCopy]; // Add items paymentParams[kFIRParameterItems] = @[jeggings]; // Log added payment info event [FIRAnalytics logEventWithName:kFIREventAddPaymentInfo parameters:paymentParams];
Kotlin+KTX
firebaseAnalytics.logEvent(FirebaseAnalytics.Event.ADD_PAYMENT_INFO) { param(FirebaseAnalytics.Param.CURRENCY, "USD") param(FirebaseAnalytics.Param.VALUE, 14.98) param(FirebaseAnalytics.Param.COUPON, "SUMMER_FUN") param(FirebaseAnalytics.Param.PAYMENT_TYPE, "Visa") param(FirebaseAnalytics.Param.ITEMS, arrayOf(itemJeggingsCart)) }
Java
Bundle addPaymentParams = new Bundle(); addPaymentParams.putString(FirebaseAnalytics.Param.CURRENCY, "USD"); addPaymentParams.putDouble(FirebaseAnalytics.Param.VALUE, 14.98); addPaymentParams.putString(FirebaseAnalytics.Param.COUPON, "SUMMER_FUN"); addPaymentParams.putString(FirebaseAnalytics.Param.PAYMENT_TYPE, "Visa"); addPaymentParams.putParcelableArray(FirebaseAnalytics.Param.ITEMS, new Parcelable[]{itemJeggingsCart}); mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.ADD_PAYMENT_INFO, addPaymentParams);
Web
import { getAnalytics, logEvent } from "firebase/analytics"; // Prepare ecommerce params const params9 = { currency: 'USD', value: 14.98, // Total Revenue coupon: 'SUMMER_FUN', payment_type: 'Visa', items: [item_jeggings] }; // Log event const analytics = getAnalytics(); logEvent(analytics, 'add_payment_info', params9);
Web
// Prepare ecommerce params const params9 = { currency: 'USD', value: 14.98, // Total Revenue coupon: 'SUMMER_FUN', payment_type: 'Visa', items: [item_jeggings] }; // Log event firebase.analytics().logEvent(firebase.analytics.EventName.ADD_PAYMENT_INFO, params9);
Dart
await FirebaseAnalytics.instance.logAddPaymentInfo(
currency: 'USD',
value: 15.98,
coupon: "SUMMER_FUN",
paymentType: "Visa",
items: [jeggingsWithQuantity],
);
Satın alma işlemi yapma veya geri ödeme yapma
Bir veya daha fazla items
içeren purchase
etkinliği kaydederek satın alma işlemini ölçün
ilgili alanlarla tanımlanır.
Swift
// Prepare purchase params var purchaseParams: [String: Any] = [ AnalyticsParameterTransactionID: "T12345", AnalyticsParameterAffiliation: "Google Store", AnalyticsParameterCurrency: "USD", AnalyticsParameterValue: 14.98, AnalyticsParameterTax: 2.58, AnalyticsParameterShipping: 5.34, AnalyticsParameterCoupon: "SUMMER_FUN" ] // Add items purchaseParams[AnalyticsParameterItems] = [jeggings] // Log purchase event Analytics.logEvent(AnalyticsEventPurchase, parameters: purchaseParams)
Objective-C
// Prepare purchase params NSMutableDictionary *purchaseParams = [@{ kFIRParameterTransactionID: @"T12345", kFIRParameterAffiliation: @"Google Store", kFIRParameterCurrency: @"USD", kFIRParameterValue: @14.98, kFIRParameterTax: @2.58, kFIRParameterShipping: @5.34, kFIRParameterCoupon: @"SUMMER_FUN" } mutableCopy]; // Add items purchaseParams[kFIRParameterItems] = @[jeggings]; // Log purchase event [FIRAnalytics logEventWithName:kFIREventPurchase parameters:purchaseParams];
Kotlin+KTX
firebaseAnalytics.logEvent(FirebaseAnalytics.Event.PURCHASE) { param(FirebaseAnalytics.Param.TRANSACTION_ID, "T12345") param(FirebaseAnalytics.Param.AFFILIATION, "Google Store") param(FirebaseAnalytics.Param.CURRENCY, "USD") param(FirebaseAnalytics.Param.VALUE, 14.98) param(FirebaseAnalytics.Param.TAX, 2.58) param(FirebaseAnalytics.Param.SHIPPING, 5.34) param(FirebaseAnalytics.Param.COUPON, "SUMMER_FUN") param(FirebaseAnalytics.Param.ITEMS, arrayOf(itemJeggingsCart)) }
Java
Bundle purchaseParams = new Bundle(); purchaseParams.putString(FirebaseAnalytics.Param.TRANSACTION_ID, "T12345"); purchaseParams.putString(FirebaseAnalytics.Param.AFFILIATION, "Google Store"); purchaseParams.putString(FirebaseAnalytics.Param.CURRENCY, "USD"); purchaseParams.putDouble(FirebaseAnalytics.Param.VALUE, 14.98); purchaseParams.putDouble(FirebaseAnalytics.Param.TAX, 2.58); purchaseParams.putDouble(FirebaseAnalytics.Param.SHIPPING, 5.34); purchaseParams.putString(FirebaseAnalytics.Param.COUPON, "SUMMER_FUN"); purchaseParams.putParcelableArray(FirebaseAnalytics.Param.ITEMS, new Parcelable[]{itemJeggingsCart}); mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.PURCHASE, purchaseParams);
Web
import { getAnalytics, logEvent } from "firebase/analytics"; // Prepare ecommerce bundle const params10 = { transaction_id: 'T12345', affiliation: 'Google Store', currency: 'USD', value: 14.98, // Total Revenue tax: 2.85, shipping: 5.34, coupon: 'SUMMER_FUN', items: [item_jeggings] }; // Log event const analytics = getAnalytics(); logEvent(analytics, 'purchase', params10);
Web
// Prepare ecommerce bundle const params10 = { transaction_id: 'T12345', affiliation: 'Google Store', currency: 'USD', value: 14.98, // Total Revenue tax: 2.85, shipping: 5.34, coupon: 'SUMMER_FUN', items: [item_jeggings] }; // Log event firebase.analytics().logEvent(firebase.analytics.EventName.PURCHASE, params10);
Dart
await FirebaseAnalytics.instance.logPurchase(
transactionId: "12345",
affiliation: "Google Store",
currency: 'USD',
value: 15.98,
shipping: 2.00,
tax: 1.66,
coupon: "SUMMER_FUN",
items: [jeggingsWithQuantity],
);
Alakalı transaction_id
ile bir refund
etkinliği kaydederek geri ödemeleri ölçün
belirtilir ve isteğe bağlı olarak item_id
ve isteğe bağlı olarak bir veya daha fazla items
quantity
. refund
öğenize öğe bilgilerini eklemenizi öneririz
etkinliği tıklayın.
Swift
// Prepare refund params var refundParams: [String: Any] = [ AnalyticsParameterTransactionID: "T12345", AnalyticsParameterCurrency: "USD", AnalyticsParameterValue: 9.99, ] // (Optional) for partial refunds, define the item ID and quantity of refunded items let refundedProduct: [String: Any] = [ AnalyticsParameterItemID: "SKU_123", AnalyticsParameterQuantity: 1, ]; // Add items refundParams[AnalyticsParameterItems] = [refundedProduct] // Log refund event Analytics.logEvent(AnalyticsEventRefund, parameters: refundParams)
Objective-C
// Prepare refund params NSMutableDictionary *refundParams = [@{ kFIRParameterTransactionID: @"T12345", kFIRParameterCurrency: @"USD", kFIRParameterValue: @9.99, } mutableCopy]; // (Optional) for partial refunds, define the item ID and quantity of refunded items NSDictionary *refundedProduct = @{ kFIRParameterItemID: @"SKU_123", kFIRParameterQuantity: @1, }; // Add items refundParams[kFIRParameterItems] = @[refundedProduct]; // Log refund event [FIRAnalytics logEventWithName:kFIREventRefund parameters:refundParams];
Kotlin+KTX
firebaseAnalytics.logEvent(FirebaseAnalytics.Event.REFUND) { param(FirebaseAnalytics.Param.TRANSACTION_ID, "T12345") param(FirebaseAnalytics.Param.AFFILIATION, "Google Store") param(FirebaseAnalytics.Param.CURRENCY, "USD") param(FirebaseAnalytics.Param.VALUE, 9.99) // (Optional) for partial refunds, define the item ID and quantity of refunded items param(FirebaseAnalytics.Param.ITEM_ID, "SKU_123") param(FirebaseAnalytics.Param.QUANTITY, 1) param(FirebaseAnalytics.Param.ITEMS, arrayOf(itemJeggings)) }
Java
Bundle refundParams = new Bundle(); refundParams.putString(FirebaseAnalytics.Param.TRANSACTION_ID, "T12345"); refundParams.putString(FirebaseAnalytics.Param.AFFILIATION, "Google Store"); refundParams.putString(FirebaseAnalytics.Param.CURRENCY, "USD"); refundParams.putDouble(FirebaseAnalytics.Param.VALUE, 9.99); // (Optional) for partial refunds, define the item ID and quantity of refunded items refundParams.putString(FirebaseAnalytics.Param.ITEM_ID, "SKU_123"); refundParams.putLong(FirebaseAnalytics.Param.QUANTITY, 1); refundParams.putParcelableArray(FirebaseAnalytics.Param.ITEMS, new Parcelable[]{itemJeggings}); mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.REFUND, refundParams);
Web
import { getAnalytics, logEvent } from "firebase/analytics"; // Prepare ecommerce params const params11 = { transaction_id: 'T12345', // Required affiliation: 'Google Store', currency: 'USD', value: 9.99, items: [] }; // (Optional) For partial refunds, define the item_id and quantity of refunded items const refundedProduct = { item_id: 'SKU_123', // Required quantity: 1 // Required }; params11.items.push(refundedProduct); // Log event const analytics = getAnalytics(); logEvent(analytics, 'refund', params11);
Web
// Prepare ecommerce params const params11 = { transaction_id: 'T12345', // Required affiliation: 'Google Store', currency: 'USD', value: 9.99, items: [] }; // (Optional) For partial refunds, define the item_id and quantity of refunded items const refundedProduct = { item_id: 'SKU_123', // Required quantity: 1 // Required }; params11.items.push(refundedProduct); // Log event firebase.analytics().logEvent(firebase.analytics.EventName.REFUND, params11);
Dart
await FirebaseAnalytics.instance.logRefund(
transactionId: "12345",
affiliation: "Google Store",
currency: 'USD',
value: 15.98,
items: [jeggingsWithQuantity],
);
Promosyonları uygula
E-ticaret, dahili web sitelerine ilişkin gösterimleri ve tıklamaları ölçmeye yönelik desteği içerir. Promosyonlar (ör. bir indirimi tanıtmak için gösterilen banner'lar).
Tanıtım gösterimleri genellikle ilk ekran görüntülemesiyle birlikte şu tarihe kadar ölçülür:
şunu belirtmek için view_promotion
etkinliğini items
parametresiyle günlüğe kaydeder:
promosyon üründür. Bir kullanıcının bir promosyonu tıkladığını belirtmek için
select_promotion
etkinliğini bu ürün için item
parametresi olarak kullanabilirsiniz.
Swift
// Prepare promotion parameters var promoParams: [String: Any] = [ AnalyticsParameterPromotionID: "T12345", AnalyticsParameterPromotionName:"Summer Sale", AnalyticsParameterCreativeName: "summer2020_promo.jpg", AnalyticsParameterCreativeSlot: "featured_app_1", AnalyticsParameterLocationID: "HERO_BANNER", ] // Add items promoParams[AnalyticsParameterItems] = [jeggings] // Log event when promotion is displayed Analytics.logEvent(AnalyticsEventViewPromotion, parameters: promoParams) // Log event when promotion is selected Analytics.logEvent(AnalyticsEventSelectPromotion, parameters: promoParams)
Objective-C
// Prepare promotion parameters NSMutableDictionary *promoParams = [@{ kFIRParameterPromotionID: @"T12345", kFIRParameterPromotionName: @"Summer Sale", kFIRParameterCreativeName: @"summer2020_promo.jpg", kFIRParameterCreativeSlot: @"featured_app_1", kFIRParameterLocationID: @"HERO_BANNER", } mutableCopy]; // Add items promoParams[kFIRParameterItems] = @[jeggings]; // Log event when promotion is displayed [FIRAnalytics logEventWithName:kFIREventViewPromotion parameters:promoParams]; // Log event when promotion is selected [FIRAnalytics logEventWithName:kFIREventSelectPromotion parameters:promoParams];
Kotlin+KTX
val promoParams = Bundle().apply { putString(FirebaseAnalytics.Param.PROMOTION_ID, "SUMMER_FUN") putString(FirebaseAnalytics.Param.PROMOTION_NAME, "Summer Sale") putString(FirebaseAnalytics.Param.CREATIVE_NAME, "summer2020_promo.jpg") putString(FirebaseAnalytics.Param.CREATIVE_SLOT, "featured_app_1") putString(FirebaseAnalytics.Param.LOCATION_ID, "HERO_BANNER") putParcelableArray(FirebaseAnalytics.Param.ITEMS, arrayOf<Parcelable>(itemJeggings)) } // Promotion displayed firebaseAnalytics.logEvent(FirebaseAnalytics.Event.VIEW_PROMOTION, promoParams) // Promotion selected firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_PROMOTION, promoParams)
Java
Bundle promoParams = new Bundle(); promoParams.putString(FirebaseAnalytics.Param.PROMOTION_ID, "SUMMER_FUN"); promoParams.putString(FirebaseAnalytics.Param.PROMOTION_NAME, "Summer Sale"); promoParams.putString(FirebaseAnalytics.Param.CREATIVE_NAME, "summer2020_promo.jpg"); promoParams.putString(FirebaseAnalytics.Param.CREATIVE_SLOT, "featured_app_1"); promoParams.putString(FirebaseAnalytics.Param.LOCATION_ID, "HERO_BANNER"); promoParams.putParcelableArray(FirebaseAnalytics.Param.ITEMS, new Parcelable[]{itemJeggings}); // Promotion displayed mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.VIEW_PROMOTION, promoParams); // Promotion selected mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_PROMOTION, promoParams);
Web
import { getAnalytics, logEvent } from "firebase/analytics"; // Prepare ecommerce params const params12 = { promotion_id: 'ABC123', promotion_name: 'Summer Sale', creative_name: 'summer2020_promo.jpg', creative_slot: 'featured_app_1', location_id: 'HERO_BANNER', items: [item_jeggings] }; // Log event when a promotion is displayed const analytics = getAnalytics(); logEvent(analytics, 'view_promotion', params12); // Log event when a promotion is selected logEvent(analytics, 'select_promotion', params12);
Web
// Prepare ecommerce params const params12 = { promotion_id: 'ABC123', promotion_name: 'Summer Sale', creative_name: 'summer2020_promo.jpg', creative_slot: 'featured_app_1', location_id: 'HERO_BANNER', items: [item_jeggings] }; // Log event when a promotion is displayed firebase.analytics().logEvent(firebase.analytics.EventName.VIEW_PROMOTION, params12); // Log event when a promotion is selected firebase.analytics().logEvent(firebase.analytics.EventName.SELECT_PROMOTION, params12);
Dart
await FirebaseAnalytics.instance.logViewPromotion(
promotionId: "SUMMER_FUN",
promotionName: "Summer Sale",
creativeName: "summer2020_promo.jpg",
creativeSlot: "featured_app_1",
locationId: "HERO_BANNER",
);
await FirebaseAnalytics.instance.logSelectPromotion(
promotionId: "SUMMER_FUN",
promotionName: "Summer Sale",
creativeName: "summer2020_promo.jpg",
creativeSlot: "featured_app_1",
locationId: "HERO_BANNER",
);
Öğe kapsamlı özel parametreleri gönder
Öğe kapsamlı özel parametreler, parametresi için gerekli veya isteğe bağlı e-ticaret öğesi. Özel parametre, bir öğe hakkında bilgi toplamanıza olanak tanır yeni bir seçenek belirleyin.
Uygulamanızdan, dizide 27 adede kadar öğe kapsamlı özel parametre gönderebilirsiniz yapılandırabileceğiniz 10 öğe var öğe kapsamlı özel boyutlar standart mülkler için 25, Analytics 360 mülkleri için ise 25 olarak ayarlanmalıdır. Bu sayede yeniden etiketleme yapmak zorunda kalmadan daha büyük bir parametre havuzundan seçim yapma esnekliği en iyi şekilde yararlanabilirsiniz.
Swift
// A pair of jeggings
var jeggings: [String: Any] = [
AnalyticsParameterItemID: "SKU_123",
AnalyticsParameterItemName: "jeggings",
AnalyticsParameterItemCategory: "pants",
AnalyticsParameterItemVariant: "black",
AnalyticsParameterItemBrand: "Google",
AnalyticsParameterPrice: 9.99,
AnalyticsParameterItemColor: "blue", // The item-scoped custom parameter
]
Objective-C
// A pair of jeggings
NSMutableDictionary *jeggings = [@{
kFIRParameterItemID: @"SKU_123",
kFIRParameterItemName: @"jeggings",
kFIRParameterItemCategory: @"pants",
kFIRParameterItemVariant: @"black",
kFIRParameterItemBrand: @"Google",
kFIRParameterPrice: @9.99,
kFIRParameterItemColor: @"blue", // The item-scoped custom parameter
} mutableCopy];
Kotlin+KTX
val itemJeggings = Bundle().apply {
putString(FirebaseAnalytics.Param.ITEM_ID, "SKU_123")
putString(FirebaseAnalytics.Param.ITEM_NAME, "jeggings")
putString(FirebaseAnalytics.Param.ITEM_CATEGORY, "pants")
putString(FirebaseAnalytics.Param.ITEM_VARIANT, "black")
putString(FirebaseAnalytics.Param.ITEM_BRAND, "Google")
putDouble(FirebaseAnalytics.Param.PRICE, 9.99)
putString(FirebaseAnalytics.Param.ITEM_COLOR, "blue") // The item-scoped custom parameter
}
Java
Bundle itemJeggings = new Bundle();
itemJeggings.putString(FirebaseAnalytics.Param.ITEM_ID, "SKU_123");
itemJeggings.putString(FirebaseAnalytics.Param.ITEM_NAME, "jeggings");
itemJeggings.putString(FirebaseAnalytics.Param.ITEM_CATEGORY, "pants");
itemJeggings.putString(FirebaseAnalytics.Param.ITEM_VARIANT, "black");
itemJeggings.putString(FirebaseAnalytics.Param.ITEM_BRAND, "Google");
itemJeggings.putDouble(FirebaseAnalytics.Param.PRICE, 9.99);
itemJeggings.putDouble(FirebaseAnalytics.Param.ITEM_COLOR, 9.99); // The item-scoped custom parameter
Web
// A pair of jeggings
const item_jeggings = {
item_id: 'SKU_123',
item_name: 'jeggings',
item_category: 'pants',
item_variant: 'black',
item_brand: 'Google',
price: 9.99,
item_color: 'blue' // The item-scoped custom parameter
};
Web
// A pair of jeggings
const item_jeggings = {
item_id: 'SKU_123',
item_name: 'jeggings',
item_category: 'pants',
item_variant: 'black',
item_brand: 'Google',
price: 9.99,
item_color: 'blue' // The item-scoped custom parameter
};
Dart
// A pair of jeggings
final jeggings = AnalyticsEventItem(
itemId: "SKU_123",
itemName: "jeggings",
itemCategory: "pants",
itemVariant: "black",
itemBrand: "Google",
price: 9.99,
itemColor: "blue", // The item-scoped custom parameter
);