我使用我的测试用户购买了非耗材产品,但是当我这样称呼时:
[[SKPaymentQueue defaultQueue] restoreCompletedTransactions];
我在paymentQueueRestoreCompletedTransactionsFinished中看不到任何交易。代码如下所示:
- (void)paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue
{
NSLog(@"received restored transactions: %i", queue.transactions.count);
for (SKPaymentTransaction *transaction in queue.transactions)
{
[self restoreTransaction:transaction];
}
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Success" message:@"Your add-ons have been restored." delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alertView show];
return;
}
日志始终显示“已恢复的已恢复的事务:0”,但我希望看到一个事务。有谁知道为什么没有退回交易?
答案 0 :(得分:7)
现在它突然开始工作了!我只改变了一件事,即进入iTunes Connect并编辑我的产品描述,以便状态从“拒绝”变为“待定”。奇怪的是,购买仍然有效(即使在“拒绝”状态),只有恢复不起作用。我尝试在更改后立即恢复并且它不起作用,但现在(大约20分钟后),恢复正常。更改为挂起必须已修复它(在更改有一些时间传播到StoreKit服务器之后),否则这是一种间歇性的StoreKit错误。