私は消耗品にする必要のあるプロジェクトに取り組んでいます。
購入ボタンをクリックすると、以下のコードを使用して消費します。
inventory=new Inventory();
mHelper.consumeAsync(inventory.getPurchase(SKU_SUCCESS),mConsumeFinishedListener1);
しかし、ここIabHelperクラスでPurchaseのNullポインタ例外が発生します。
void consume(Purchase itemInfo) throws IabException {
checkSetupDone("consume");
if (!itemInfo.mItemType.equals(ITEM_TYPE_INAPP)) {
throw new IabException(IABHELPER_INVALID_CONSUMPTION,
"Items of type '" + itemInfo.mItemType
+ "' can't be consumed.");
}
try {
String token = itemInfo.getToken();
String sku = itemInfo.getSku();
if (token == null || token.equals("")) {
logError("Can't consume " + sku + ". No token.");
throw new IabException(IABHELPER_MISSING_TOKEN,
"PurchaseInfo is missing token for sku: " + sku + " "
+ itemInfo);
}
誰かがこれに関するアイデアを持っているかどうか私に知らせてください。
ConsumerAsync()のコード
public void consumeAsync(Purchase purchase, OnConsumeFinishedListener listener) {
checkSetupDone("consume");
List<Purchase> purchases = new ArrayList<Purchase>();
purchases.add(purchase);
consumeAsyncInternal(purchases, listener, null);
}
public void consumeAsync(List<Purchase> purchases, OnConsumeMultiFinishedListener listener) {
checkSetupDone("consume");
consumeAsyncInternal(purchases, null, listener);
}