e コマース トラッキング - Android SDK v2(従来版)

このドキュメントでは、Android 向け Google アナリティクス SDK v2 を使用して、アプリ内決済と収益を測定する方法の概要を説明します。

概要

e コマースの測定では、アプリ内の購入と売り上げのデータを Google アナリティクスに送ることができます。Google アナリティクスの e コマースデータは通常、共有のトランザクション ID に関連付けられたトランザクションとアイテムのデータで構成されます。Android 向け Google アナリティクス SDK では、トランザクション オブジェクトを作成して項目を追加することで、関係が確立されます。

e コマースデータは、主に以下のレポートで使用されます。

  • e コマースの概要
  • 商品の販売状況
  • 販売実績
  • トランザクション
  • 購入までの間隔

実装

Google アナリティクスでトランザクションを測定するには、次の 3 つの手順を行います。

  1. トランザクション オブジェクトを作成します。
  2. アイテム オブジェクトを構築し、トランザクション オブジェクトに追加します。
  3. sendTransaction(Transaction transObject) を使用してトランザクションを送信します。 .

次の例では、ユーザーがアプリ内購入を完了した後に onPurchaseCompleted() が呼び出されています。

/**
 * The purchase was processed. We will send the transaction and its associated line items to Google Analytics,
 * but only if the purchase has been confirmed.
 */
public void onPurchaseCompleted() {
  Transaction myTrans = new Transaction.Builder(
      "0_123456",                                           // (String) Transaction Id, should be unique.
      (long) (2.16 * 1000000))                              // (long) Order total (in micros)
      .setAffiliation("In-App Store")                       // (String) Affiliation
      .setTotalTaxInMicros((long) (0.17 * 1000000))         // (long) Total tax (in micros)
      .setShippingCostInMicros(0)                           // (long) Total shipping cost (in micros)
      .build();

  myTrans.addItem(new Item.Builder(
      "L_789",                                              // (String) Product SKU
      "Level Pack: Space",                                  // (String) Product name
      (long) (1.99 * 1000000),                              // (long) Product price (in micros)
      (long) 1)                                             // (long) Product quantity
      .setProductCategory("Game expansions")                // (String) Product category
      .build());

    Tracker myTracker = EasyTracker.getTracker(); // Get reference to tracker.
    myTracker.sendTransaction(myTrans); // Send the transaction.
}

通貨の種類

Android 向け Google アナリティクス SDK では、e コマースの通貨フィールドはマイクロ(100 万単位)単位である必要があります。

たとえば、4.5991 の通貨値を送信するには、上記の例のように、トランザクションを Google アナリティクスに送信するときに、その値をミクロ(4599100)に変換する必要があります。SDK がそのトランザクションを Google アナリティクスにディスパッチすると、その値は自動的に固定小数点数値に変換され、4.5991 として送信されます。

e コマースコードでは通貨記号、カンマは使用しません。

e コマースの通貨フィールドは負の通貨値もサポートしています。払い戻しや返品で必要になる場合があります。

通貨の指定

デフォルトでは、トランザクションの値は、レポート対象のビュー(プロファイル)の通貨であると想定されます。

トランザクションのローカル通貨をオーバーライドするには、次の例のように Transaction を作成するときに setCurrencyCode を呼び出します。

/**
 * 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() {
  Transaction myTrans = new Transaction.Builder(
      "0_123456",
      (long) (1.59 * 1000000))
      .setAffiliation("In-App Store")
      .setTotalTaxInMicros((long) (0.13 * 1000000))
      .setShippingCostInMicros(0)
      .setCurrencyCode("EUR")                               // (String) Set currency code to Euros.
      .build();

    Tracker myTracker = EasyTracker.getTracker();
    myTracker.sendTransaction(myTrans);
}

サポートされている通貨と通貨コードの一覧については、サポートされている通貨のリファレンスをご覧ください。