Транзакция не завершена с использованием SKPayment

Я не закончил транзакцию в своем приложении, поэтому, когда я пытаюсь купить в приложении с этим ID, я получил это сообщение:

этот при покупке приложения уже куплен, он будет восстановлен бесплатно

Но когда я нажимаю кнопку ok, методы делегирования никогда не вызываются.

- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions{ } - (void)paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue { } 

Как я могу поймать какое-то событие, чтобы завершить эту транзакцию?

Когда пользователь пытается что-то купить, почему бы не сначала проверить, находится ли эта покупка в очереди?

 BOOL alreadyInProgress = NO; for (SKPaymentTransaction *tx in [[SKPaymentQueue defaultQueue] transactions]) { alreadyInProgress |= [tx.transactionIdentifier isEqualToString:productId]; } if (alreadyInProgress) { // Alert that the purchase is already active } else { // Your purchase flow }