Android应用内结算项目价格

生也有涯,知也无涯。这篇文章主要讲述Android应用内结算项目价格相关的知识,希望能为你提供帮助。
在实际显示应用内购买的android市场前端之前,如何检索应用内结算项目的价格?目前看起来用户只能在购买对话框中找到应用内商品的价格,并且我希望避免将所有支持货币的价格存储在应用程序中。
答案现在可以使用Billing API v3。您可以使用getSkuDetails()方法获取信息。例子是here。

ArrayList skuList = new ArrayList(); skuList.add("premiumUpgrade"); skuList.add("gas"); Bundle querySkus = new Bundle(); querySkus.putStringArrayList(“ITEM_ID_LIST”, skuList); Bundle skuDetails = mService.getSkuDetails(3, getPackageName(), “inapp”, querySkus); int response = skuDetails.getInt("RESPONSE_CODE"); if (response == 0) { ArrayList responseList = skuDetails.getStringArrayList("DETAILS_LIST"); for (String thisResponse : responseList) { JSONObject object = new JSONObject(thisResponse); String sku = object.getString("productId"); String price = object.getString("price"); if (sku.equals(“premiumUpgrade”)) { mPremiumUpgradePrice = price; } else if (sku.equals(“gas”)) { mGasPrice = price; } } }

另一答案【Android应用内结算项目价格】如果您使用的是Trivial Drive示例并包含IabHelper类,则需要将skus列表传递给queryInventoryAsync。
String[] moreSkus = {"SKU_ITEMONE", "SKU_ITEMTWO"}; mHelper.queryInventoryAsync(true, Arrays.asList(moreSkus), mGotInventoryListener);

另一答案
String price = inventory.getSkuDetails("sku_of_your_product").getPrice();


    推荐阅读