生也有涯,知也无涯。这篇文章主要讲述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();
推荐阅读
- 在App Purchase中(需要登录[环境:沙箱])
- 将Android应用程序设为试用版,然后进行计费以解锁应用程序的最佳策略是什么()
- 免费试用实施macOS app的自动续订订阅
- 如何通过Apple TestFlight测试应用内购买()
- 无法以美元为InApp Purchase添加价格,在瑞士获得开发者帐户的选项是德国
- 12个安全扩展,以保护Joomla网站
- 如何保护你的共享主机帐户()
- 保护Smartwatch的四个基本技巧
- 保护Web应用程序服务器的8个基本技巧