我在恢复已完成的交易时遇到一些问题。
[[SKPaymentQueue defaultQueue] restoreCompletedTransactions];
我添加了几个示例中提到的观察者,我尝试添加paymentQueueRestoreCompletedTransactionsFinished
并且已经有了updatedTransactions
. paymentQueueRestoreCompletedTransactionsFinished
说我的交易量为零。
我可以购买产品,如果我尝试再次购买,它会阻止我并说我已经使用此代码购买了该产品。
SKPayment *payment = [SKPayment paymentWithProductIdentifier:productIdentifier];
[[SKPaymentQueue defaultQueue] addPayment:payment];
我想也许我的捆绑包标识符有问题,但这看起来很好,如果不是的话,购买将无法进行。
我一直在设备和模拟器上尝试此操作,但这具有相同的结果。另外,如果我使用英国或美国商店,这没有什么区别。
我真的很想找出为什么这对我不起作用?
尝试这样做并检查数组计数是否也返回零?
- (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];
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)