การติดตามอีคอมเมิร์ซ - Android SDK

เอกสารนี้จะแสดงภาพรวมของวิธีวัดการชำระเงินในแอปและ รายได้โดยใช้ Google Analytics SDK สำหรับ Android v3

ภาพรวม

การวัดอีคอมเมิร์ซช่วยให้คุณส่งยอดขายและการซื้อในแอปไปยัง Google Analytics ได้ ข้อมูลอีคอมเมิร์ซใน Google Analytics ประกอบด้วยธุรกรรมและ Hit ของรายการ ซึ่งเกี่ยวข้องกันโดยรหัสธุรกรรมที่ใช้ร่วมกัน

ธุรกรรมมีช่องต่อไปนี้

ชื่อช่อง ฟิลด์เครื่องมือติดตาม ประเภท จำเป็น คำอธิบาย
รหัสธุรกรรม Fields.TRANSACTION_ID String ได้ รหัสที่ไม่ซ้ำกันซึ่งแสดงธุรกรรม รหัสนี้ไม่ควรขัดแย้งกับรหัสธุรกรรมอื่นๆ
แอฟฟิลิเอต Fields.TRANSACTION_AFFILIATION String ได้ บุคคลที่ควรมีส่วนเกี่ยวข้องกับธุรกรรม (เช่น ร้านค้าหนึ่งๆ)
รายได้ Fields.TRANSACTION_REVENUE Double ได้ รายได้ทั้งหมดของธุรกรรม รวมภาษีและค่าจัดส่ง
ภาษี Fields.TRANSACTION_TAX Double ได้ ภาษีรวมสำหรับธุรกรรม
การจัดส่ง Fields.TRANSACTION_SHIPPING Double ได้ ค่าจัดส่งรวมสำหรับธุรกรรม
รหัสสกุลเงิน Fields.CURRENCY_CODE String ไม่ได้ สกุลเงินท้องถิ่นของธุรกรรม ค่าเริ่มต้นเป็นสกุลเงินของข้อมูลพร็อพเพอร์ตี้ (โปรไฟล์) ที่ใช้ดูธุรกรรม

รายการจะมีช่องต่อไปนี้

ชื่อช่อง ฟิลด์เครื่องมือติดตาม ประเภท จำเป็น คำอธิบาย
รหัสธุรกรรม Fields.TRANSACTION_ID String ได้ รหัสธุรกรรมที่ควรเชื่อมโยงกับสินค้า
ชื่อ Fields.ITEM_NAME String ได้ ชื่อผลิตภัณฑ์
SKU Fields.ITEM_SKU String ได้ SKU ของผลิตภัณฑ์
หมวดหมู่ Fields.ITEM_CATEGORY String ไม่ได้ หมวดหมู่ที่มีผลิตภัณฑ์ดังกล่าว
ราคา Fields.ITEM_PRICE Double ได้ ราคาของผลิตภัณฑ์
จำนวน Fields.ITEM_QUANTITY Long ได้ จำนวนผลิตภัณฑ์
รหัสสกุลเงิน Fields.CURRENCY_CODE String ไม่ได้ สกุลเงินท้องถิ่นของธุรกรรม ค่าเริ่มต้นเป็นสกุลเงินของข้อมูลพร็อพเพอร์ตี้ (โปรไฟล์) ที่มีการรายงานธุรกรรม

ข้อมูลอีคอมเมิร์ซจะใช้ในรายงานมาตรฐานต่อไปนี้เป็นหลัก

  • ภาพรวมอีคอมเมิร์ซ
  • ประสิทธิภาพผลิตภัณฑ์
  • ประสิทธิภาพการขาย
  • ธุรกรรม
  • ระยะเวลาจนถึงวันซื้อ

การใช้งาน

การส่งธุรกรรมและข้อมูลสินค้าไปยัง Google Analytics จำเป็นต้องมีการตั้งค่า ค่าธุรกรรมและช่องรายการในตัวติดตามและส่งครั้งละ 1 รายการ เช่น

import android.app.Activity;

import com.google.analytics.tracking.android.EasyTracker;
import com.google.analytics.tracking.android.MapBuilder;

public class CheckoutActivity extends Activity {

  /*
   * Called when a purchase is processed and verified.
   */
  public void onPurchaseCompleted() {

    // May return null if EasyTracker has not yet been initialized with a
    // property ID.
    EasyTracker easyTracker = EasyTracker.getInstance(this);

    easyTracker.send(MapBuilder
        .createTransaction("0_123456",       // (String) Transaction ID
                           "In-app Store",   // (String) Affiliation
                           2.16d,            // (Double) Order revenue
                           0.17d,            // (Double) Tax
                           0.0d,             // (Double) Shipping
                           "USD")            // (String) Currency code
        .build()
    );

    easyTracker.send(MapBuilder
        .createItem("0_123456",               // (String) Transaction ID
                    "Level Pack: Space",      // (String) Product name
                    "L_789",                  // (String) Product SKU
                    "Game expansions",        // (String) Product category
                    1.99d,                    // (Double) Product price
                    1L,                       // (Long) Product quantity
                    "USD")                    // (String) Currency code
        .build()
    );
  }

  // ... Rest of the Activity definition
}

ช่องสกุลเงินอีคอมเมิร์ซรองรับค่าสกุลเงินที่ติดลบ ซึ่งอาจเป็นความจําเป็นในกรณีของการคืนเงินหรือการคืนสินค้า

การระบุสกุลเงิน

โดยค่าเริ่มต้น ระบบจะถือว่ามูลค่าธุรกรรมเป็นสกุลเงินของข้อมูลพร็อพเพอร์ตี้ (โปรไฟล์) ที่มีการรายงาน

หากต้องการลบล้างสกุลเงินท้องถิ่นของธุรกรรมและผลิตภัณฑ์ที่เกี่ยวข้อง ให้ตั้งค่าช่องรหัสสกุลเงินของรายการและ Hit ของรายการด้วยรหัสสกุลเงินใหม่ ดูรายการสกุลเงินและรหัสสกุลเงินที่รองรับทั้งหมดได้ใน ข้อมูลอ้างอิงสกุลเงินที่รองรับ

import android.app.Activity;

import com.google.analytics.tracking.android.EasyTracker;
import com.google.analytics.tracking.android.MapBuilder;

public class CheckoutActivity extends Activity {
  /**
   * In this example, the currency of the transaction is set to Euros. The
   * currency values will appear in reports using the global currency
   * type of the view (profile).
   */
  public void onPurchaseCompleted() {

    // Assumes a tracker has already been initialized with a property ID, otherwise
    // this call returns null.
    EasyTracker easyTracker = EasyTracker.getInstance(this);

    easyTracker.send(MapBuilder
        .createTransaction("0_123456",       // (String) Transaction ID, should be unique among transactions.
                           "In-app Store",   // (String) Affiliation
                           (long) 2.16,      // (long) Order revenue (includes tax and shipping)
                           (long) 0.17,      // (long) Tax
                           0.0,              // (long) Shipping cost
                           "EUR")            // (String) Currency code
        .build();

  }
  // ... Rest of the Activity definition.
}