当没有任何东西需要恢复时显示警报

时间:2015-04-16 20:23:24

标签: ios in-app-purchase restore

我在我的应用中实施了应用内购买,并进行了恢复。我的问题是:如果我按下恢复按钮并且没有什么可以恢复,我怎么知道呢?

现在,如果我点击恢复按钮并且用户之前购买了某些内容,它将恢复并显示消息。但是,如果没有什么可以恢复,它就什么都不做,我想告诉用户一些事情。

由于

更新

我通过检查所做的交易数来修复它,如果它是= 0则没有什么可以恢复:

- (void)paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue {
    NSMutableArray *purchasedItemIDs = [[NSMutableArray alloc] init];

    if (queue.transactions.count == 0) {
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Sorry" message:@"You don't have anything to restore"  delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil];

        [alert show];

    }


    for (SKPaymentTransaction *transaction in queue.transactions) {



        NSString *productID = transaction.payment.productIdentifier;
        [purchasedItemIDs addObject:productID];
        [_transactionDelegate inAppPurchaseHelper:self transaction:productID didFinish:YES];

    }
}

1 个答案:

答案 0 :(得分:2)

恢复完成后调用paymentQueueRestoreCompletedTransactionsFinished方法。在此期间,跟踪您使用SKPaymentTransactionStateRestored类型收到的交易次数(如果有)。

如果它为零,那么你就知道什么都没有恢复。