根据Google Analytics eCommerce guide for Android,我需要使用Tracker.sendTransaction
方法来跟踪购买情况。所需的三条信息是购买价格,总税金和运费(所有多头)。但是,通过应用内购买提供的响应不会提供这些数据。
我错过了什么吗?这些信息实际上是否已归还?我在哪里可以找到他们设置它们?
答案 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