在Android上跟踪购买时,我在哪里可以获得商品价格,总税金和运费?

时间:2013-07-09 00:47:38

标签: android google-analytics in-app-purchase easytracker

根据Google Analytics eCommerce guide for Android,我需要使用Tracker.sendTransaction方法来跟踪购买情况。所需的三条信息是购买价格,总税金和运费(所有多头)。但是,通过应用内购买提供的响应不会提供这些数据。

我错过了什么吗?这些信息实际上是否已归还?我在哪里可以找到他们设置它们?

1 个答案:

答案 0 :(得分:1)

您可以使用getSkuDetails - 方法获取有关所有产品的信息:

ArrayList<String> skuList = new ArrayList<String> ();
skuList.add("premiumUpgrade");
skuList.add("gas");
Bundle querySkus = new Bundle();
querySkus.putStringArrayList(“ITEM_ID_LIST”, skuList);

Bundle skuDetails = mService.getSkuDetails(3, getPackageName(), "inapp", querySkus);

代码取自:http://developer.android.com/google/play/billing/billing_integrate.html#QueryDetails

通过检查购买后返回的数据,您知道用户购买了哪种产品:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
   if (requestCode == 1001) {           
      int responseCode = data.getIntExtra("RESPONSE_CODE", 0);
      String purchaseData = data.getStringExtra("INAPP_PURCHASE_DATA");
      String dataSignature = data.getStringExtra("INAPP_DATA_SIGNATURE");

      if (resultCode == RESULT_OK) {
         try {
            JSONObject jo = new JSONObject(purchaseData);
            String sku = jo.getString("productId");
            // TODO: query getSkuDetails() and find the matching product
            alert("You have bought the " + sku + ". Excellent choice, 
               adventurer!");
          }
          catch (JSONException e) {
             alert("Failed to parse purchase data.");
             e.printStackTrace();
          }
      }
   }
}

代码取自:http://developer.android.com/google/play/billing/billing_integrate.html#Purchase