如何获得SKU价格并在TextView中显示它

时间:2017-02-25 10:18:40

标签: android textview in-app-billing

我需要检索InApp Purchase的价格并将其显示为我的卡片布局中的标题。

这是卡片的样子,而不是“sku价格”,我需要有实际价格。

this is the card

我只有这个IAP所以我不需要数组或列表。

要在应用结算中实施,我遵循Android Developers - In App Billing Guide

到目前为止,我试图在我的onQueryInventoryFinished()方法中写这个,没有任何运气。

IabHelper.QueryInventoryFinishedListener mGotInventoryListener = new IabHelper.QueryInventoryFinishedListener() {
    @Override
    public void onQueryInventoryFinished(IabResult result, Inventory inv) {
        //have we been disposed of in the meantime? if so, quit
        if (mHelper == null) return;

        //is it a failure?
        if(result.isFailure()) {
            alert("Failed to query Inventory: " + result);
            return;
        }

        String skuPrice = inv.getSkuDetails(SKU_PREMIUM).getPrice();
        ((TextView)findViewById(R.id.card_buy_title)).setText(skuPrice);

        //do we have the premium upgrade?
        Purchase premiumPurchase = inv.getPurchase(SKU_PREMIUM);
        isPremium = (premiumPurchase != null && verifyDeveloperPayload(premiumPurchase));
    }
};

据我所知,这件事我应该得到已经购买的物品的价格。所以也许这就是为什么它不起作用。

你们有人能指出我正确的方向吗?

1 个答案:

答案 0 :(得分:0)

在您的mHelper设置中,您必须通过调用

来查询所有广告资源
mHelper.queryInventoryAsync(true, allSkus, null, mGotInventoryListener);

其中allSkus是所有skues的列表。

检查IabHelper