Google Analytics obsługuje ulepszone e-commerce w usługach w Universal Analytics. Ulepszone e-commerce umożliwia pomiar interakcji użytkowników z produktami podczas zakupów. Może to obejmować wyświetlenia promocji, kliknięcia promocji, wyświetlenia produktów, kliknięcia produktów, obejrzenia szczegółów produktu, dodanie produktów do koszyka, usunięcie produktów z koszyka, inicjowanie płatności, transakcji i zwrotów środków.
Najnowsze wersje Menedżera tagów Google i Google Analytics dla aplikacji mobilnych działają w połączeniu z Firebase – platformą aplikacji mobilnych Google. Podczas pomiaru aplikacji za pomocą pakietu SDK Firebase masz dostęp do wielu automatycznie generowanych raportów o aplikacjach mobilnych, które możesz dodatkowo dostosowywać i uzupełniać kodem w aplikacji. Raporty te automatycznie zawierają dane o zakupach w aplikacji przetwarzanych przez App Store w iTunes i Google Play. Dodatkowe raporty e-commerce można generować, implementując zalecane zdarzenia dotyczące aplikacji e-commerce. Szczegółowe raporty o zachowaniach zakupowych (tj. ulepszony e-commerce) są obecnie dostępne tylko w usługach Universal Analytics.
Z tego dokumentu dowiesz się, jak używać Menedżera tagów w przypadku aplikacji mobilnych z pakietem SDK Firebase do wysyłania danych ulepszonego e-commerce do usług w Universal Analytics.
Pierwsze kroki
Zanim zaczniesz, skonfiguruj te wymagania wstępne aplikacji:
- Zainstaluj i skonfiguruj Firebase i Menedżera tagów Google w swojej aplikacji. Upewnij się, że używasz pakietu SDK Firebase na Androida w wersji 11 lub nowszej.
Zaimportuj te 2 pakiety:
import com.google.firebase.analytics.FirebaseAnalytics.Event;
import com.google.firebase.analytics.FirebaseAnalytics.Param;
W kontenerze Menedżera tagów utwórz zdefiniowaną przez użytkownika zmienną o nazwie „promocje” z tymi ustawieniami:
- Typ zdarzenia: parametr niestandardowy
- Klucz parametru zdarzenia: promocje
- Wartość domyślna: niezdefiniowana
Implementacja
W sekcjach poniżej dowiesz się, jak rejestrować zdarzenia za pomocą parametrów niezbędnych do pomiaru działań Ulepszonego e-commerce, takich jak:
- Wyświetlenia produktu
- Kliknięcia/wybór produktów
- Widoki szczegółów produktu
- Dodania do koszyka
- Usuwanie z koszyka
- Wyświetlenia promocji
- Kliknięcia/wybór promocji
- Proces płatności
- Zakupy
- Zwroty środków
Wyświetlenia produktu
Wyświetlenia produktu możesz mierzyć, rejestrując zdarzenie za pomocą parametru ITEM_LIST
i co najmniej jednego elementu (np. produktów) zdefiniowanych w odpowiednich polach.
// Define products with relevant parameters
Bundle product1 = new Bundle();
product1.putString( Param.ITEM_ID, "sku1234"); // ITEM_ID or ITEM_NAME is required
product1.putString( Param.ITEM_NAME, "Donut Friday Scented T-Shirt");
product1.putString( Param.ITEM_CATEGORY, "Apparel/Men/Shirts");
product1.putString( Param.ITEM_VARIANT, "Blue");
product1.putString( Param.ITEM_BRAND, "Google");
product1.putDouble( Param.PRICE, 29.99 );
product1.putString( Param.CURRENCY, "USD" );
product1.putLong( Param.INDEX, 1 ); // Position of the item in the list
Bundle product2 = new Bundle();
product2.putString( Param.ITEM_ID, "sku5678");
product2.putString( Param.ITEM_NAME, "Android Workout Capris");
product2.putString( Param.ITEM_CATEGORY, "Apparel/Women/Pants");
product2.putString( Param.ITEM_VARIANT, "Black");
product2.putString( Param.ITEM_BRAND, "Google");
product2.putDouble( Param.PRICE, 39.99 );
product2.putString( Param.CURRENCY, "USD" );
product2.putLong( Param.INDEX, 2 );
// Prepare ecommerce bundle
ArrayList <bundle>items = new ArrayList<bundle>();
items.add(product1);
items.add(product2);
Bundle ecommerceBundle = new Bundle();
ecommerceBundle.putParcelableArrayList( "items", items );
// Set relevant bundle-level parameters
ecommerceBundle.putString( Param.ITEM_LIST, "Search Results" ); // List name
// Log view_search_results or view_item_list event with ecommerce bundle
mFirebaseAnalytics.logEvent( Event.VIEW_SEARCH_RESULTS, ecommerceBundle );
Zobacz konfigurację tagu dla tego przykładu:
- Typ tagu: Universal Analytics
- Rodzaj ścieżki: Wyświetlenie ekranu
- Pola do ustawienia: (Nazwa pola) screenName (wartość, np.) Ekran wyników wyszukiwania
- Włączanie funkcji Ulepszonego e-commerce: Prawda
- Odczyt danych ze zdarzenia Firebase
- Aktywator, np.: (Niestandardowe > Niektóre zdarzenia) Nazwa zdarzenia równa się view_search_results
Kliknięcia/wybór produktów
Kliknięcia produktu możesz mierzyć, rejestrując zdarzenie SELECT_CONTENT
z produktem (tj. produktem) zdefiniowanym w odpowiednich polach:
// Define product with relevant parameters
Bundle product1 = new Bundle();
product1.putString( Param.ITEM_ID, "sku1234"); // ITEM_ID or ITEM_NAME is required
product1.putString( Param.ITEM_NAME, "Donut Friday Scented T-Shirt");
product1.putString( Param.ITEM_CATEGORY, "Apparel/Men/Shirts");
product1.putString( Param.ITEM_VARIANT, "Blue");
product1.putString( Param.ITEM_BRAND, "Google");
product1.putDouble( Param.PRICE, 29.99 );
product1.putString( Param.CURRENCY, "USD" ); // Item-level currency unused today
product1.putLong( Param.INDEX, 1 ); // Position of the item in the list
// Prepare ecommerce bundle
Bundle ecommerceBundle = new Bundle();
ecommerceBundle.putBundle( "items", product1 );
// Set relevant action-level parameters
ecommerceBundle.putString( Param.ITEM_LIST, "Search Results" ); // Optional list name
// Log select_content event with ecommerce bundle
mFirebaseAnalytics.logEvent( Event.SELECT_CONTENT, ecommerceBundle );
Zobacz konfigurację tagu dla tego przykładu:
- Typ tagu: Universal Analytics
- Typ śledzenia: Zdarzenie
- Kategoria zdarzenia, np.: E-commerce
- Akcja zdarzenia, np. Kliknięcie produktu
- Włączanie funkcji Ulepszonego e-commerce: Prawda
- Odczyt danych ze zdarzenia Firebase
- Aktywator, np.: (Niestandardowe > Niektóre zdarzenia) Nazwa zdarzenia równa się select_content AND {{promotions}} równa się niezdefiniowana
Widoki szczegółów produktu
Mierz widoki szczegółów produktu, rejestrując zdarzenie VIEW_ITEM
z produktem (tj. produktem) zdefiniowanym w odpowiednich polach:
// Define product with relevant parameters
Bundle product1 = new Bundle();
product1.putString( Param.ITEM_ID, "sku1234"); // ITEM_ID or ITEM_NAME is required
product1.putString( Param.ITEM_NAME, "Donut Friday Scented T-Shirt");
product1.putString( Param.ITEM_CATEGORY, "Apparel/Men/Shirts");
product1.putString( Param.ITEM_VARIANT, "Blue");
product1.putString( Param.ITEM_BRAND, "Google");
product1.putDouble( Param.PRICE, 29.99 );
product1.putString( Param.CURRENCY, "USD" ); // Item-level currency unused today
// Prepare ecommerce bundle
Bundle ecommerceBundle = new Bundle();
ecommerceBundle.putBundle( "items", product1 );
// Log view_item event with ecommerce bundle
mFirebaseAnalytics.logEvent( Event.VIEW_ITEM, ecommerceBundle );
Zobacz konfigurację tagu dla tego przykładu:
- Typ tagu: Universal Analytics
- Rodzaj ścieżki: Wyświetlenie ekranu
- Pola do ustawienia: (Nazwa pola) screenName (wartość, np.) Ekran szczegółów usługi
- Włączanie funkcji Ulepszonego e-commerce: Prawda
- Odczyt danych ze zdarzenia Firebase
- Aktywator, np.: (Niestandardowe > Niektóre zdarzenia) Nazwa zdarzenia równa się view_item AND
- {{promotions}} równa się nieokreślone
Dodania do koszyka
Zmierz produkt dodawany do koszyka, rejestrując zdarzenie ADD_TO_CART
z produktem (tj. produktem) zdefiniowanym za pomocą odpowiednich pól:
// Define product with relevant parameters
Bundle product1 = new Bundle();
product1.putString( Param.ITEM_ID, "sku1234"); // ITEM_ID or ITEM_NAME is required
product1.putString( Param.ITEM_NAME, "Donut Friday Scented T-Shirt");
product1.putString( Param.ITEM_CATEGORY, "Apparel/Men/Shirts");
product1.putString( Param.ITEM_VARIANT, "Blue");
product1.putString( Param.ITEM_BRAND, "Google");
product1.putDouble( Param.PRICE, 29.99 );
product1.putString( Param.CURRENCY, "USD" ); // Item-level currency unused today
product1.putLong( Param.QUANTITY, 1 );
// Prepare ecommerce bundle
Bundle ecommerceBundle = new Bundle();
ecommerceBundle.putBundle( "items", product1 );
// Log add_to_cart event with ecommerce bundle
mFirebaseAnalytics.logEvent( Event.ADD_TO_CART, ecommerceBundle );
Zobacz konfigurację tagu dla tego przykładu:
- Typ tagu: Universal Analytics
- Typ śledzenia: Zdarzenie
- Kategoria zdarzenia, np.: E-commerce
- Akcja zdarzenia, np. Dodaj do koszyka
- Włączanie funkcji Ulepszonego e-commerce: Prawda
- Odczyt danych ze zdarzenia Firebase
- Aktywator, np.: (Niestandardowe > Niektóre zdarzenia) Nazwa zdarzenia równa się add_to_cart
Usunięcia z koszyka
Zmierz produkt usuwany z koszyka, rejestrując zdarzenie REMOVE_FROM_CART
z produktem (tj. produktem) zdefiniowanym w odpowiednich polach:
// Define product with relevant parameters
Bundle product1 = new Bundle();
product1.putString( Param.ITEM_ID, "sku1234"); // ITEM_ID or ITEM_NAME is required
product1.putString( Param.ITEM_NAME, "Donut Friday Scented T-Shirt");
product1.putString( Param.ITEM_CATEGORY, "Apparel/Men/Shirts");
product1.putString( Param.ITEM_VARIANT, "Blue");
product1.putString( Param.ITEM_BRAND, "Google");
product1.putDouble( Param.PRICE, 29.99 );
product1.putString( Param.CURRENCY, "USD" ); // Item-level currency unused today
product1.putLong( Param.QUANTITY, 1 );
// Prepare ecommerce bundle
Bundle ecommerceBundle = new Bundle();
ecommerceBundle.putBundle( "items", product1 );
// Log remove_from_cart event with ecommerce bundle
mFirebaseAnalytics.logEvent( Event.REMOVE_FROM_CART, ecommerceBundle );
Zobacz konfigurację tagu dla tego przykładu:
- Typ tagu: Universal Analytics
- Typ śledzenia: Zdarzenie
- Kategoria zdarzenia, np.: E-commerce
- Akcja zdarzenia, np. : Usunięcie z koszyka
- Włączanie funkcji Ulepszonego e-commerce: Prawda
- Odczyt danych ze zdarzenia Firebase
- Aktywator, np.: (Niestandardowe > Niektóre zdarzenia) Nazwa zdarzenia równa się remove_from_cart
Wyświetlenia miniatury promocji
Wyświetlenia promocji możesz mierzyć, rejestrując zdarzenie VIEW_ITEM
, VIEW_ITEM_LIST
lub VIEW_SEARCH_RESULTS
z elementem promocyjnym zdefiniowanym w odpowiednich polach:
// Define promotion with relevant parameters
Bundle promotion = new Bundle();
promotion.putString( Param.ITEM_ID, "PROMO_1234" ); // promotion ID; either ITEM_ID or ITEM_NAME is required
promotion.putString( Param.ITEM_NAME, "Summer Sale" ); // promotion name
promotion.putString( Param.CREATIVE_NAME, "summer_banner2" );
promotion.putString( Param.CREATIVE_SLOT, "banner_slot1" );
// Prepare ecommerce bundle
ArrayList <bundle>promotions = new ArrayList<bundle>();
promotions.add(promotion);
Bundle ecommerceBundle = new Bundle();
ecommerceBundle.putParcelableArrayList("promotions", promotions );
// Log view_item, view_item_list, or view_search_results event with ecommerce bundle
mFirebaseAnalytics.logEvent(Event.VIEW_ITEM, ecommerceBundle );
Zobacz konfigurację tagu dla tego przykładu:
- Typ tagu: Universal Analytics
- Typ śledzenia: Zdarzenie
- Kategoria zdarzenia, np.: Promocja wewnętrzna
- Akcja zdarzenia, np.: Wyświetlenie
- Działanie niezwiązane z interakcją: prawda
- Włączanie funkcji Ulepszonego e-commerce: Prawda
- Odczyt danych ze zdarzenia Firebase
- Aktywator, np.: (Niestandardowe > Niektóre zdarzenia) Nazwa zdarzenia równa się view_item AND
- {{promotions}} nie równa się nieokreślonemu
Kliknięcia/wybór promocji
Kliknięcia promocji mierzy się, rejestrując zdarzenie SELECT_CONTENT
z promocją
zdefiniowaną za pomocą odpowiednich pól:
// Define promotion with relevant parameters
Bundle promotion = new Bundle();
promotion.putString( Param.ITEM_ID, "PROMO_1234"); // promotion ID; either ITEM_ID or ITEM_NAME is required
promotion.putString( Param.ITEM_NAME, "Summer Sale"); // promotion name
promotion.putString( Param.CREATIVE_NAME, "summer_banner2");
promotion.putString( Param.CREATIVE_SLOT, "banner_slot1");
// Prepare ecommerce bundle
ArrayList <bundle>promotions = new ArrayList<bundle>();
promotions.add(promotion);
Bundle ecommerceBundle = new Bundle();
ecommerceBundle.putParcelableArrayList("promotions", promotions );
// Set properties for the event to be shown in the Google Analytics (Firebase) reports.
// These properties will not impact the Universal Analytics reporting.
ecommerceBundle.putString( Param.CONTENT_TYPE, “Internal Promotions” );
ecommerceBundle.putString( Param.ITEM_ID, "PROMO_1234" );
// Log select_content, view_item_list, or view_search_results event with ecommerce bundle
mFirebaseAnalytics.logEvent( Event.SELECT_CONTENT, ecommerceBundle );
Zobacz konfigurację tagu dla tego przykładu:
- Typ tagu: Universal Analytics
- Typ śledzenia: Zdarzenie
- Kategoria zdarzenia, np.: Promocja wewnętrzna
- Akcja zdarzenia, np. : kliknięcie
- Włączanie funkcji Ulepszonego e-commerce: Prawda
- Odczyt danych ze zdarzenia Firebase
- Aktywator, np.: (Niestandardowe > Niektóre zdarzenia) Nazwa zdarzenia równa się select_content I {{promotions}} nie równa się nieokreślonej
Proces płatności
Rozpoczęcie realizacji płatności
Pierwszy krok w procesie płatności możesz mierzyć, rejestrując zdarzenie BEGIN_CHECKOUT
z co najmniej 1 produktem (tj. produktem) zdefiniowanym w odpowiednich polach:
// Define products with relevant parameters
Bundle product1 = new Bundle();
product1.putString( Param.ITEM_ID, "sku1234"); // ITEM_ID or ITEM_NAME is required
product1.putString( Param.ITEM_NAME, "Donut Friday Scented T-Shirt");
product1.putString( Param.ITEM_CATEGORY, "Apparel/Men/Shirts");
product1.putString( Param.ITEM_VARIANT, "Blue");
product1.putString( Param.ITEM_BRAND, "Google");
product1.putDouble( Param.PRICE, 29.99 );
product1.putString( Param.CURRENCY, "USD" ); // Item-level currency unused today
product1.putLong( Param.QUANTITY, 1 );
// Prepare ecommerce bundle
ArrayList <bundle>items = new ArrayList<bundle>();
items.add(product1);
Bundle ecommerceBundle = new Bundle();
ecommerceBundle.putParcelableArrayList( "items", items );
// Set checkout step and optional checkout option
ecommerceBundle.putLong( Param.CHECKOUT_STEP, 1 ); // Optional for first step
ecommerceBundle.putString( Param.CHECKOUT_OPTION, "Visa" ); // Optional
// Log BEGIN_CHECKOUT event with ecommerce bundle
mFirebaseAnalytics.logEvent( Event.BEGIN_CHECKOUT, ecommerceBundle );
Zobacz konfigurację tagu dla tego przykładu:
- Typ tagu: Universal Analytics
- Rodzaj ścieżki: Wyświetlenie ekranu
- Pola do ustawienia: (Nazwa pola) screenName (wartość, np.) Ekran koszyka
- Włączanie funkcji Ulepszonego e-commerce: Prawda
- Odczyt danych ze zdarzenia Firebase
- Aktywator, np.: (Niestandardowe > Niektóre zdarzenia) Nazwa zdarzenia równa się start_checkout
Dodatkowe kroki przy kasie
Aby mierzyć dodatkowe kroki procesu płatności, zarejestruj zdarzenie CHECKOUT_PROGRESS
z co najmniej 1 produktem (tj. produktem) zdefiniowanym w odpowiednich polach:
// Define products with relevant parameters
Bundle product1 = new Bundle();
product1.putString( Param.ITEM_ID, "sku1234"); // ITEM_ID or ITEM_NAME is required
product1.putString( Param.ITEM_NAME, "Donut Friday Scented T-Shirt");
product1.putString( Param.ITEM_CATEGORY, "Apparel/Men/Shirts");
product1.putString( Param.ITEM_VARIANT, "Blue");
product1.putString( Param.ITEM_BRAND, "Google");
product1.putDouble( Param.PRICE, 29.99 );
product1.putString( Param.CURRENCY, "USD" ); // Item-level currency unused today
product1.putLong( Param.QUANTITY, 1 );
// Prepare ecommerce bundle
ArrayList <bundle>items = new ArrayList<bundle>();
items.add(product1);
Bundle ecommerceBundle = new Bundle();
ecommerceBundle.putParcelableArrayList( "items", items );
// Set checkout step and optional checkout option
ecommerceBundle.putLong( Param.CHECKOUT_STEP, 2 );
ecommerceBundle.putString( Param.CHECKOUT_OPTION, "Visa" ); // Optional
// Log CHECKOUT_PROGRESS event with ecommerce bundle
mFirebaseAnalytics.logEvent( Event.CHECKOUT_PROGRESS, ecommerceBundle );
Zobacz konfigurację tagu dla tego przykładu:
- Typ tagu: Universal Analytics
- Rodzaj ścieżki: Wyświetlenie ekranu
- Pola do ustawienia: (Nazwa pola) screenName (wartość, np.) Etap 2 realizacji transakcji Ekran
- Włączanie funkcji Ulepszonego e-commerce: Prawda
- Odczyt danych ze zdarzenia Firebase
- Aktywator, np.: (Niestandardowe > Niektóre zdarzenia) Nazwa zdarzenia równa się checkout_progress
Opcje płatności i wysyłki
Opcje płatności umożliwiają pomiar dodatkowych informacji o stanie procesu płatności. Opcje płatności możesz mierzyć jako część zdarzenia etapu płatności (jak pokazano powyżej) lub po zarejestrowaniu przez użytkownika opcji już po zarejestrowaniu zdarzenia w danym kroku płatności.
Mierz opcje płatności po etapie płatności, rejestrując zdarzenie SET_CHECKOUT_OPTION
z odpowiednimi parametrami CHECKOUT_STEP
i CHECKOUT_OPTION
:
Bundle ecommerceBundle = new Bundle();
ecommerceBundle.putLong( Param.CHECKOUT_STEP, 2 );
ecommerceBundle.putString( Param.CHECKOUT_OPTION, "Mastercard" );
mFirebaseAnalytics.logEvent( Event.SET_CHECKOUT_OPTION, ecommerceBundle );
Zobacz konfigurację tagu dla tego przykładu:
- Typ tagu: Universal Analytics
- Typ śledzenia: Zdarzenie
- Kategoria zdarzenia, np.: E-commerce
- Akcja zdarzenia, np. Ustaw opcję płatności
- Włączanie funkcji Ulepszonego e-commerce: Prawda
- Odczyt danych ze zdarzenia Firebase
- Aktywator, np.: (Niestandardowe > Niektóre zdarzenia) Nazwa zdarzenia równa się set_checkout_option
Zakupy
Zakupy możesz mierzyć, rejestrując zdarzenie ECOMMERCE_PURCHASE
z co najmniej 1 produktem (tj. produktami) zdefiniowanym w odpowiednich polach:
// Define product with relevant parameters
Bundle product1 = new Bundle();
product1.putString( Param.ITEM_ID, "sku1234"); // ITEM_ID or ITEM_NAME is required
product1.putString( Param.ITEM_NAME, "Donut Friday Scented T-Shirt");
product1.putString( Param.ITEM_CATEGORY, "Apparel/Men/Shirts");
product1.putString( Param.ITEM_VARIANT, "Blue");
product1.putString( Param.ITEM_BRAND, "Google");
product1.putDouble( Param.PRICE, 29.99 );
product1.putString( Param.CURRENCY, "USD" ); // Item-level currency unused today
product1.putLong( Param.QUANTITY, 1 );
Bundle product2 = new Bundle();
product2.putString( Param.ITEM_ID, "sku5678");
product2.putString( Param.ITEM_NAME, "Android Workout Capris");
product2.putString( Param.ITEM_CATEGORY, "Apparel/Women/Pants");
product2.putString( Param.ITEM_VARIANT, "Black");
product2.putString( Param.ITEM_BRAND, "Google");
product2.putDouble( Param.PRICE, 39.99 );
product2.putString( Param.CURRENCY, "USD" ); // Item-level currency unused today
product2.putLong( Param.QUANTITY, 1 );
// Prepare ecommerce bundle
ArrayList <bundle>items = new ArrayList<bundle>();
items.add(product1);
items.add(product2);
Bundle ecommerceBundle = new Bundle();
ecommerceBundle.putParcelableArrayList( "items", items );
// Set relevant transaction-level parameters
ecommerceBundle.putString( Param.TRANSACTION_ID, "T12345" );
ecommerceBundle.putString( Param.AFFILIATION, "Google Store - Online" );
ecommerceBundle.putDouble( Param.VALUE, 37.39 ); // Revenue
ecommerceBundle.putDouble( Param.TAX, 2.85 );
ecommerceBundle.putDouble( Param.SHIPPING, 5.34 );
ecommerceBundle.putString( Param.CURRENCY, "USD" );
ecommerceBundle.putString( Param.COUPON, "SUMMER2017" );
// Log ecommerce_purchase event with ecommerce bundle
mFirebaseAnalytics.logEvent( Event.ECOMMERCE_PURCHASE, ecommerceBundle );
Zobacz konfigurację tagu dla tego przykładu:
- Typ tagu: Universal Analytics
- Rodzaj ścieżki: Wyświetlenie ekranu
- Pola do ustawienia: (Nazwa pola) screenName (wartość, np.) Ekran z podziękowaniem
- Włączanie funkcji Ulepszonego e-commerce: Prawda
- Odczyt danych ze zdarzenia Firebase
- Aktywator, np.: (Niestandardowe > Niektóre zdarzenia) Nazwa zdarzenia równa się ecommerce_purchase
zwroty środków,
Mierzenie zwrotów środków można mierzyć, rejestrując zdarzenie PURCHASE_REFUND
z określonym identyfikatorem transakcji i opcjonalnie (w przypadku częściowych zwrotów środków) co najmniej jeden produkt (tj. produkty) zdefiniowanych za pomocą identyfikatorów produktów i ich ilości:
// Prepare ecommerce bundle with transaction ID to be refunded
Bundle ecommerceBundle = new Bundle();
ecommerceBundle.putString( Param.TRANSACTION_ID, "T12345" ); // Required
ecommerceBundle.putDouble( Param.VALUE, 37.39 ); // Optional in Universal Analytics
// (OPTIONAL) For partial refunds, define the item IDs and quantities of products being refunded
Bundle refundedProduct = new Bundle();
refundedProduct.putString( Param.ITEM_ID, "sku1234" ); // Required for partial refund
refundedProduct.putLong( Param.QUANTITY, 1 ); // Required for partial refund
ArrayList <bundle>items = new ArrayList<bundle>();
items.add(refundedProduct);
ecommerceBundle.putParcelableArrayList( "items", items );
// Log purchase_refund event with ecommerce bundle
mFirebaseAnalytics.logEvent( Event.PURCHASE_REFUND, ecommerceBundle );
Zobacz konfigurację tagu dla tego przykładu:
- Typ tagu: Universal Analytics
- Typ śledzenia: Zdarzenie
- Kategoria zdarzenia, np.: E-commerce
- Akcja zdarzenia, np. Zwrot środków
- Włączanie funkcji Ulepszonego e-commerce: Prawda
- Odczyt danych ze zdarzenia Firebase
- Aktywator, np.: (Niestandardowe > Niektóre zdarzenia) Nazwa zdarzenia równa się purchase_refund