我在我的应用程序中使用以下代码实现IAP:
-(void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions
{
for (SKPaymentTransaction *transaction in transactions)
{
[_loadingIndicator startAnimating];
switch (transaction.transactionState) {
case SKPaymentTransactionStatePurchased:
[self unlockPurchase];
[[SKPaymentQueue defaultQueue] finishTransaction:transaction];
break;
case SKPaymentTransactionStateRestored:
[self unlockPurchase];
[[SKPaymentQueue defaultQueue] finishTransaction:transaction];
break;
case SKPaymentTransactionStateFailed:
NSLog(@"Transaction failed");
[[SKPaymentQueue defaultQueue] finishTransaction:transaction];
break;
default:
break;
}
}
}
当用户按下购买按钮时,会弹出一个警告视图,要求用户输入Apple ID和密码,如果用户按下取消按钮,则代码变为SKPaymentTransactionStatePurchased:
,应用程序将解锁产品。代码有什么问题?
我知道是怎么回事了。Cydia的本地IAP商店正在运行。我安装它是为了检查是否有可能通过这个调整绕过ITunes Store并找到一个解决方案来防止它,然后我忘了关闭它。