【发布时间】:2017-06-28 11:24:33
【问题描述】:
我有以下获取产品信息的方法:
public void getProductInfo(final ProductListener listener, final String sku) {
IabHelper.QueryInventoryFinishedListener
mQueryFinishedListener = new IabHelper.QueryInventoryFinishedListener() {
public void onQueryInventoryFinished(IabResult result, Inventory inventory)
{
if (result.isFailure()) {
listener.onProductInfo(false,null,null,result.getMessage());
return;
}
//consumeProduct(inventory);
Purchase purchase=inventory.getPurchase(sku);
if (purchase!=null) {
listener.onProductInfo(true,purchase,inventory.getSkuDetails(sku).getPrice(),"ok");
} else {
listener.onProductInfo(true,null,null,"no_product");
}
}
};
ArrayList<String> skuList = new ArrayList();
skuList.add(sku);
//make a request
try {
mHelper.queryInventoryAsync(true, skuList,null,mQueryFinishedListener);
} catch (IabHelper.IabAsyncInProgressException e) {
listener.onProductInfo(false,null,null,context.getResources().getString(R.string.product_error)+e.getLocalizedMessage());
e.printStackTrace();
}
}
但是,对于订阅,此方法返回 0 大小的库存列表。订阅本身按预期工作,在我订阅后,此方法返回有效的 sku 详细信息。但我希望用户在开始之前在应用程序的 ui 中查看产品价格/详细信息购买流程。
我尝试根据this 更新util包,但没有成功
【问题讨论】:
标签: android in-app-purchase inventory subscriptions