यह दस्तावेज़, Android SDK के पुराने वर्शन के बारे में बताता है. अगर आपके लिए Analyitcs नया है, तो नए SDK टूल का इस्तेमाल करें. ज़्यादा जानें

बेहतर ई-कॉमर्स ट्रैकिंग

इस दस्तावेज़ में, Android के लिए Google Analytics SDK v4 की मदद से, इन-ऐप्लिकेशन ई-कॉमर्स से जुड़ी कार्रवाइयों और इंप्रेशन को मेज़र करने का तरीका बताया गया है.

खास जानकारी

बेहतर ई-कॉमर्स, उपयोगकर्ता के ऐसे अनुभव के साथ उपयोगकर्ता के इंटरैक्शन का मेज़रमेंट करता है जिसमें प्रॉडक्ट इंप्रेशन, प्रॉडक्ट पर क्लिक, प्रॉडक्ट की जानकारी देखने, शॉपिंग कार्ट में प्रॉडक्ट जोड़ने, चेकआउट की प्रोसेस शुरू करने, लेन-देन, और रिफ़ंड पाने जैसी सुविधाएं शामिल हैं.

लागू करना

बेहतर ई-कॉमर्स मेज़रमेंट के लिए, आपको HitBuilder क्लास और इसके तरीके सेट का इस्तेमाल करके प्रॉडक्ट, इंप्रेशन, और प्रमोशन के लिए ई-कॉमर्स डेटा भेजना होगा. ई-कॉमर्स से जुड़ी जानकारी बनाने के लिए, Google Analytics ई-कॉमर्स क्लास का सेट भी दिया गया है.

बेहतर ई-कॉमर्स की मदद से, ये काम किए जा सकते हैं:

ई-कॉमर्स गतिविधियों का आकलन करना

एक सामान्य बेहतर ई-कॉमर्स लागू करने से, प्रॉडक्ट इंप्रेशन और इनमें से कोई भी कार्रवाई मेज़र होगी:

  • किसी प्रॉडक्ट को चुना जा रहा है.
  • प्रॉडक्ट की जानकारी देखी जा रही है.
  • आंतरिक प्रचार के इंप्रेशन और चुनाव.
  • शॉपिंग कार्ट में प्रॉडक्ट जोड़ना / हटाना.
  • किसी प्रॉडक्ट के लिए चेकआउट की प्रोसेस शुरू करना.
  • खरीदारी और रिफ़ंड.

इंप्रेशन मेज़र करना

किसी प्रॉडक्ट इंप्रेशन को मेज़र करने के लिए, Product ऑब्जेक्ट बनाएं. साथ ही, addImpression तरीके का इस्तेमाल करके, उसे हिट के साथ भेजें. Product में नाम या आईडी की वैल्यू होनी चाहिए. दूसरी सभी वैल्यू वैकल्पिक हैं और इन्हें सेट नहीं करना चाहिए.

Product product = new Product()
    .setId("P12345")
    .setName("Android Warhol T-Shirt")
    .setCategory("Apparel/T-Shirts")
    .setBrand("Google")
    .setVariant("Black")
    .setPosition(1)
    .setCustomDimension(1, "Member");
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .addImpression(product, "Search Results");

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("searchResults");
t.send(builder.build());

getTracker तरीके के बारे में जानने के लिए, बेहतर कॉन्फ़िगरेशन देखें.

कार्रवाइयों का आकलन करना

कार्रवाइयों को मेज़र करने के लिए addProduct तरीके का इस्तेमाल किया जाता है. साथ ही, Product ऑब्जेक्ट में प्रॉडक्ट की जानकारी जोड़ी जाती है. साथ ही, setProductAction तरीके के साथ ProductAction ऑब्जेक्ट का इस्तेमाल करके, की जाने वाली कार्रवाई के बारे में बताया जाता है.

उदाहरण के लिए, नीचे दिया गया कोड खोज के नतीजों की सूची में दिखाए गए प्रॉडक्ट के चुनाव को मापता है:

Product product =  new Product()
    .setId("P12345")
    .setName("Android Warhol T-Shirt")
    .setCategory("Apparel/T-Shirts")
    .setBrand("Google")
    .setVariant("Black")
    .setPosition(1)
    .setCustomDimension(1, "Member");
ProductAction productAction = new ProductAction(ProductAction.ACTION_CLICK)
    .setProductActionList("Search Results");
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .addProduct(product)
    .setProductAction(productAction);

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("searchResults");
t.send(builder.build());

इंप्रेशन और कार्रवाइयों को जोड़ना

ऐसे मामलों में, जहां आपके पास प्रॉडक्ट इंप्रेशन और एक कार्रवाई, दोनों हैं, तो इन्हें एक हिट में जोड़ा और मापा जा सकता है.

नीचे दिए गए उदाहरण में, मिलते-जुलते प्रॉडक्ट के सेक्शन के साथ, प्रॉडक्ट की जानकारी वाले व्यू को मेज़र करने का तरीका बताया गया है:

// The product from a related products section.
Product relatedProduct =  new Product()
    .setId("P12346")
    .setName("Android Warhol T-Shirt")
    .setCategory("Apparel/T-Shirts")
    .setBrand("Google")
    .setVariant("White")
    .setPosition(1);

// The product being viewed.
Product viewedProduct =  new Product()
    .setId("P12345")
    .setName("Android Warhol T-Shirt")
    .setCategory("Apparel/T-Shirts")
    .setBrand("Google")
    .setVariant("Black")
    .setPosition(1);

ProductAction productAction = new ProductAction(ProductAction.ACTION_DETAIL);
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .addImpression(relatedProduct, "Related Products")
    .addProduct(viewedProduct)
    .setProductAction(productAction);

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("product");
t.send(builder.build());

लेन-देन मेज़र करना

लेन-देन का आकलन करने के लिए, addProduct तरीके का इस्तेमाल करके Product ऑब्जेक्ट का इस्तेमाल करके, प्रॉडक्ट की जानकारी जोड़ें. साथ ही, ProductAction ऑब्जेक्ट के साथ setProductAction तरीके का इस्तेमाल करके, खरीदारी की कार्रवाई के बारे में बताएं. ProductAction ऑब्जेक्ट में लेन-देन के लेवल की जानकारी दी जाती है, जैसे कि कुल आय, टैक्स, और शिपिंग की जानकारी.

Product product =  new Product()
    .setId("P12345")
    .setName("Android Warhol T-Shirt")
    .setCategory("Apparel/T-Shirts")
    .setBrand("Google")
    .setVariant("black")
    .setPrice(29.20)
    .setCouponCode("APPARELSALE")
    .setQuantity(1);
ProductAction productAction = new ProductAction(ProductAction.ACTION_PURCHASE)
    .setTransactionId("T12345")
    .setTransactionAffiliation("Google Store - Online")
    .setTransactionRevenue(37.39)
    .setTransactionTax(2.85)
    .setTransactionShipping(5.34)
    .setTransactionCouponCode("SUMMER2013");
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .addProduct(product)
    .setProductAction(productAction);

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("transaction");
t.send(builder.build());

करंसी तय करना

डिफ़ॉल्ट रूप से, Google Analytics प्रबंधन वेब इंटरफ़ेस के ज़रिए सभी लेन-देन और आइटम के लिए एक आम, ग्लोबल, मुद्रा को कॉन्फ़िगर किया जा सकता है.

लोकल मुद्रा ISO 4217 स्टैंडर्ड में होनी चाहिए. काम करने वाली कन्वर्ज़न मुद्राओं की पूरी सूची देखने के लिए मुद्रा कोड रेफ़रंस का दस्तावेज़ पढ़ें.

लोकल करंसी, मुद्रा कोड ट्रैकर प्रॉपर्टी का इस्तेमाल करके तय की जाती है. उदाहरण के लिए, यह ट्रैकर, मुद्रा को यूरो के तौर पर भेजेगा:

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("transaction");
t.set("&cu", "EUR");  // Set tracker currency to Euros.
t.send(builder.build());

रिफ़ंड का आकलन करना

पूरे लेन-देन की रिफ़ंड पाने के लिए, setProductAction ऑब्जेक्ट का इस्तेमाल करके, ProductAction ऑब्जेक्ट के साथ लेन-देन आईडी और रिफ़ंड कार्रवाई का प्रकार बताएं:

// Refund an entire transaction.
ProductAction productAction = new ProductAction(ProductAction.ACTION_REFUND)
    .setTransactionId("T12345");  // Transaction ID is only required field for a full refund.
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .setProductAction(productAction);

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("refund");
t.send(builder.build());

अगर कोई मिलता-जुलता लेन-देन नहीं मिलता है, तो रिफ़ंड प्रोसेस नहीं किया जाएगा.

कुछ हिस्से के रिफ़ंड का आकलन करने के लिए, setProductAction तरीके का इस्तेमाल करके, ProductAction ऑब्जेक्ट के साथ लेन-देन आईडी, प्रॉडक्ट आईडी, और रिफ़ंड किए जाने वाले प्रॉडक्ट की संख्या बताएं:

// Refund a single product.
Product product =  new Product()
    .setId("P12345")  // Product ID is required for partial refund.
    .setQuantity(1);  // Quanity is required for partial refund.
ProductAction productAction = new ProductAction(ProductAction.ACTION_REFUND)
    .setTransactionId("T12345");  // Transaction ID is required for partial refund.
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .addProduct(product)
    .setProductAction(productAction);

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("refundProduct");
t.send(builder.build());

रिफ़ंड के लिए, नॉन-इंटरैक्शन इवेंट का इस्तेमाल करना

अगर आपको किसी इवेंट का इस्तेमाल करके रिफ़ंड का डेटा भेजना है और इवेंट आम तौर पर मेज़र किए जाने वाले उपयोगकर्ता के व्यवहार का हिस्सा नहीं है (जैसे कि उपयोगकर्ता ने उसे शुरू नहीं किया है), तो यह सुझाव दिया जाता है कि आप नॉन-इंटरैक्शन इवेंट भेजें. ऐसा करने से, इवेंट से कुछ खास मेट्रिक पर असर नहीं पड़ेगा. उदाहरण के लिए:

// Refund an entire transaction.
ProductAction productAction = new ProductAction(ProductAction.ACTION_REFUND)
    .setTransactionId("T12345");
HitBuilders.EventBuilder builder = new HitBuilders.EventBuilder()
    .setProductAction(productAction)
    .setNonInteraction(true)
    .setCategory("Ecommerce")
    .setAction("Refund");

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.send(builder.build());

चेकआउट की प्रोसेस को मेज़र करना

चेकआउट की प्रोसेस के हर चरण को मेज़र करने के लिए:

  1. चेकआउट की प्रोसेस के हर चरण को मेज़र करने के लिए, ट्रैकिंग कोड जोड़ें.
  2. अगर लागू हो, तो चेकआउट विकल्पों को मापने के लिए ट्रैकिंग कोड जोड़ें.
  3. वेब इंटरफ़ेस के एडमिन सेक्शन में, ई-कॉमर्स सेटिंग कॉन्फ़िगर करके, चेकआउट फ़नल की रिपोर्ट में उपयोगकर्ता के लिए आसान चरण के नाम सेट करें.

1. चेकआउट के चरणों का आकलन

अपनी चेकआउट प्रक्रिया के हर चरण में, आपको Google Analytics को डेटा भेजने के लिए संबंधित ट्रैकिंग कोड लागू करना होगा.

Step फ़ील्ड

हर उस चेकआउट चरण के लिए जिसे आप मेज़र करते हैं, आपको एक step वैल्यू शामिल करनी चाहिए. इस वैल्यू का इस्तेमाल, उन चेकआउट लेबल से जुड़ी कार्रवाइयों को मैप करने के लिए किया जाता है जिन्हें आपने ई-कॉमर्स सेटिंग के हर चरण में कॉन्फ़िगर किया है.

Option फ़ील्ड

अगर इस चरण को मेज़र करते समय, आपके पास चेकआउट के चरण के बारे में ज़्यादा जानकारी है, तो आप option फ़ील्ड को checkout कार्रवाई के साथ सेट कर सकते हैं. उदाहरण के लिए, उपयोगकर्ता के लिए डिफ़ॉल्ट पैसे चुकाने का तरीका (उदाहरण के लिए, #39;Visa').

चेकआउट चरण का आकलन करना

चेकआउट की प्रोसेस को मेज़र करने के लिए, Product तरीके के साथ addProduct तरीके का इस्तेमाल करें. इससे, प्रॉडक्ट की जानकारी जोड़ी जा सकती है. साथ ही, ProductAction ऑब्जेक्ट के साथ setProductAction तरीके का इस्तेमाल करके, चेकआउट की कार्रवाई के बारे में बताया जा सकता है. अगर लागू हो, तो चेकआउट के साथ step और option को भी सेट किया जा सकता है.

नीचे दिए गए उदाहरण में, चेकआउट की प्रोसेस के पहले चरण को मेज़र करने का तरीका बताया गया है. इसमें, एक प्रॉडक्ट और पैसे चुकाने के तरीके से जुड़ी कुछ और जानकारी भी दी गई है:

Product product =  new Product()
    .setId("P12345")
    .setName("Android Warhol T-Shirt")
    .setCategory("Apparel/T-Shirts")
    .setBrand("Google")
    .setVariant("black")
    .setPrice(29.20)
    .setQuantity(1);
// Add the step number and additional info about the checkout to the action.
ProductAction productAction = new ProductAction(ProductAction.ACTION_CHECKOUT)
    .setCheckoutStep(1)
    .setCheckoutOptions("Visa");
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .addProduct(product)
    .setProductAction(productAction);

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("checkoutStep1");
t.send(builder.build());

2. चेकआउट के विकल्पों का आकलन करना

चेकआउट विकल्पों की मदद से आप चेकआउट की स्थिति के बारे में ज़्यादा जानकारी माप सकते हैं. यह ऐसे मामलों में उपयोगी होता है जहां आपने चेकआउट चरण को मापा हो, लेकिन उपयोगकर्ता के चुने गए विकल्प को सेट करने के बाद, चेकआउट के उसी चरण के बारे में ज़्यादा जानकारी उपलब्ध होती है. उदाहरण के लिए, उपयोगकर्ता शिपिंग का तरीका चुनता है.

चेकआउट विकल्प को मेज़र करने के लिए, setAction का इस्तेमाल करके चेकआउट विकल्प के बारे में बताएं. साथ ही, चरण नंबर और विकल्प की जानकारी भी शामिल करें.

उपयोगकर्ता जब चेकआउट की प्रोसेस में अगले चरण पर जाने के लिए कोई कार्रवाई करता है, तो हो सकता है कि आप इस कार्रवाई को मेज़र करना चाहें. उदाहरण के लिए:

// (On "Next" button click.)
ProductAction productAction = new ProductAction(ProductAction.ACTION_CHECKOUT_OPTIONS)
    .setCheckoutStep(1)
    .setCheckoutOptions("FedEx");
HitBuilders.EventBuilder builder = new HitBuilders.EventBuilder()
    .setProductAction(productAction)
    .setCategory("Checkout")
    .setAction("Option");

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.send(builder.build());

// Advance to next page.

3. चेकआउट फ़नल कॉन्फ़िगरेशन

आपकी चेकआउट प्रक्रिया के हर कदम में एक ऐसा नाम दिया जा सकता है, जिसका इस्तेमाल रिपोर्ट में किया जाएगा. इन नामों को कॉन्फ़िगर करने के लिए, Google Analytics वेब इंटरफ़ेस के एडमिन सेक्शन पर जाएं. इसके बाद, व्यू (प्रोफ़ाइल) चुनें और ई-कॉमर्स सेटिंग पर क्लिक करें. ई-कॉमर्स सेट अप करने के निर्देशों का पालन करके, हर उस चेकआउट चरण को लेबल करें जिसे आप ट्रैक करना चाहते हैं.

Google Analytics वेब इंटरफ़ेस के एडमिन सेक्शन में ई-कॉमर्स सेटिंग. ई-कॉमर्स चालू है. साथ ही, चेकआउट फ़नल के चार चरण लेबल जोड़े गए हैं: 1. कार्ट की समीक्षा करें, 2. पैसे चुकाने के बारे में जानकारी इकट्ठा करें 3. खरीदारी की जानकारी की पुष्टि करें
     4. रसीद
पहली इमेज: ई-कॉमर्स सेट अप - चेकआउट फ़नल

आंतरिक प्रचार को मापना

बेहतर ई-कॉमर्स में, अंदरूनी प्रमोशन के इंप्रेशन और क्लिक को मेज़र करने की सुविधा शामिल होती है, जैसे कि बिक्री का प्रमोशन करने वाले बैनर.

प्रमोशन से मिले इंप्रेशन

आम तौर पर, इंटरनल प्रमोशन इंप्रेशन को शुरुआती स्क्रीन व्यू के साथ मेज़र किया जाता है. इसके लिए, addPromotion तरीके का इस्तेमाल करके प्रमोशन के बारे में जानकारी दी जाती है. उदाहरण के लिए:

Promotion promotion = new Promotion()
    .setId("PROMO_1234")
    .setName("Summer Sale")
    .setCreative("summer_banner2")
    .setPosition("banner_slot1");
HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder()
    .addPromotion(promotion);

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.setScreenName("promotions");
t.send(builder.build());

प्रचार क्लिक

अंदरूनी प्रमोशन पर होने वाले क्लिक को मेज़र करने के लिए, addPromotion तरीके का इस्तेमाल किया जा सकता है. Promotion तरीके का इस्तेमाल करके, setPromotionAction तरीके को Promotion.ACTION_CLICK या Promotion.ACTION_VIEW पर सेट किया जा सकता है. उदाहरण के लिए:

Promotion promotion = new Promotion()
    .setId("PROMO_1234")
    .setName("Summer Sale")
    .setCreative("summer_banner2")
    .setPosition("banner_slot1");
HitBuilders.EventBuilder builder = new HitBuilders.EventBuilder()
    .addPromotion(promotion)
    .setPromotionAction(Promotion.ACTION_CLICK)
    .setCategory("Internal Promotions")
    .setAction("click")
    .setLabel("Summer Sale");

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
    TrackerName.APP_TRACKER);
t.send(builder.build());