【发布时间】:2013-07-18 06:30:22
【问题描述】:
我有一个 iOS 应用,它具有应用内购买和恢复购买功能。
当我在沙盒模式下测试应用程序时,我总是收到警报,要求输入 iTunes 帐户的密码(用户名已被填充)。
现在我的应用已经上线,我安装了它并进行了应用内购买,然后恢复了购买,所以我还没有处于沙盒模式,我仍然不断收到询问 iTunes 帐户密码的警报。
下面是一个代码,它给出了我之前购买的 ProductId,然后我将这些 productId 传递给委托,它将那些状态从“购买”更改为“已购买”
- (void)paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue
{
//NSLog(@"Restored Transactions are once again in Queue for purchasing %@",[queue transactions]);
NSMutableArray *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];
// NSLog (@"product id is %@" , productID);
}
if ( mDelegate != nil && [mDelegate respondsToSelector:@selector(purchasedProductList:)] ){
[mDelegate purchasedProductList:purchasedItemIDs];
}
[purchasedItemIDs release];
}
知道如何避免这种情况吗?
谢谢
【问题讨论】:
-
您完成交易了吗?显示一些代码。
-
@Wain 我用代码示例更新了问题。用户购买后,我正在完成交易。在恢复购买时我不需要这样做吗?或者我需要这样做吗?
标签: ios in-app-purchase itunes