finishTransaction:不从队列中删除事务...

时间:2011-07-28 15:35:53

标签: iphone app-store in-app-purchase storekit

我有几个非耗材inApps。

付款完成一次(正确:SKPaymentTransactionStatePurchased),然后正确完成(并完成)inApp的下载并最终调用

[[SKPaymentQueue defaultQueue] finishTransaction:transaction];

然而交易仍在队列中......为什么?他们不应该被删除吗?还没有调用以下内容:

- (void)paymentQueue:(SKPaymentQueue *)queue removedTransactions:(NSArray *)transactions

我也尝试在我的终结交易方法中实施:

for (SKPaymentTransaction *aTransaction in [[SKPaymentQueue defaultQueue] transactions])
{
    [[SKPaymentQueue defaultQueue] finishTransaction:aTransaction];
}

(如果我试图完成的事务对象不是正确的,但这也无法删除事务 - 大多数情况下,有时它确实删除但行为不一致,我不能弄清楚为什么他们被移除了几次他们被实际删除)

1 个答案:

答案 0 :(得分:4)

根据您的问题,您似乎在购买完成时尝试下载某些内容。在这种情况下,您可能应该在下载开始之前调用finishTransaction。

相关问题