6

In App Billing v3 をサポートする Android アプリがあります。私たちのテストでは、他のすべてが正常に機能しましたが、在庫を照会することで非アクティブな製品も取得できることがわかりました.

これは、Google Play in app products インベントリを照会する方法です。

ArrayList<String> moreSkus = new ArrayList<String>();
moreSkus.add("gas");
moreSkus.add("premium");
mHelper.queryInventoryAsync(true, moreSkus, mGotInventoryListener);

...

IabHelper.QueryInventoryFinishedListener mGotInventoryListener = new IabHelper.QueryInventoryFinishedListener() {
    public void onQueryInventoryFinished(IabResult result, final Inventory inventory) {
        if(inventory.hasDetails("premium")) {
            System.out.println("Inactive product is also visible to app!");
        }
    }
};

2 つの製品のうち、「プレミアム」は非アクティブですが、IabHelper.QueryInventoryFinishedListener の print ステートメントは引き続き実行されました。

アクティブな製品のみを取得する方法はありますか?

4

1 に答える 1

0

AFAIK, you can remove the sku from the query list

//moreSkus.add("premium"); //don't query this item

This depends on your code but kinda makes sense, since you cannot query all available products with an empty "moreSku" list, you have to choose what you really want; it depends on your code anyway. Hope it can help.

于 2015-08-11T08:45:31.357 に答える