Как я могу получить идентификатор продукта из восстановленной транзакции? - программирование
Подтвердить что ты не робот

Как я могу получить идентификатор продукта из восстановленной транзакции?

Мне удалось восстановить транзакции в приложении и получить идентификатор транзакции из исходной транзакции, но как определить продукт, который был куплен в транзакции? Можно ли получить идентификатор продукта для ранее приобретенного продукта в приложении?

4b9b3361

Ответ 1

если вы хотите проверить купленные предметы, которые уже покупают пользователь. да, вы можете сделать это как

- (void) checkPurchasedItems
{
   [[SKPaymentQueue defaultQueue] restoreCompletedTransactions];
}//You Call This Function

//Then this delegate Function Will be fired
- (void) paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue
{
purchasedItemIDs = [[NSMutableArray alloc] init];

NSLog(@"received restored transactions: %i", queue.transactions.count);
for (SKPaymentTransaction *transaction in queue.transactions)
{
    NSString *productID = transaction.payment.productIdentifier;
    [purchasedItemIDs addObject:productID];
}
}

Ответ 2

SWIFT VERSION:

Как только вы получите делегата

func paymentQueueRestoreCompletedTransactionsFinished(queue: SKPaymentQueue!) {
    var productIds = [String]()
    for transcation in queue.transactions{
        if let productID = transcation.payment?.productIdentifier{
        productIds.append(productID)
        }
    }