我在我的应用中实现了应用内结算,当我购买非耗材时,它适用于该特定版本的应用。
但是当我更新应用程序的版本时,我开始将购买状态视为null。 (我猜是“物品未购买”)。
这是我的代码:
IabHelper.QueryInventoryFinishedListener mGotInventoryListener = new IabHelper.QueryInventoryFinishedListener() {
public void onQueryInventoryFinished(IabResult result, Inventory inventory) {
Log.d(TAG, "Query inventory finished.");
// Have we been disposed of in the meantime? If so, quit.
if (mHelper == null) return;
// Is it a failure?
if (result.isFailure()) {
complain("Failed to query inventory: " + result);
return;
}
// Do we have the premium upgrade?
Purchase premiumPurchase = inventory.getPurchase(C.PLAY_STORE_ITEM);
boolean mIsPremium = (premiumPurchase != null);
Log.d(TAG, "User is " + (mIsPremium ? "PREMIUM" : "NOT PREMIUM"));
}
};
我在Purchase premiumPurchase = inventory.getPurchase(C.PLAY_STORE_ITEM);