【发布时间】:2018-09-13 01:36:09
【问题描述】:
我正在目标 c 中进行 inApp 购买。我在 itunesconnect 中设置了几乎所有东西,并在我的项目上编写代码。这是我的代码
-(void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions {
for (SKPaymentTransaction *transaction in transactions) {
switch (transaction.transactionState) {
case SKPaymentTransactionStatePurchased:[self UnlockPurchase];
[[SKPaymentQueue defaultQueue] finishTransaction:transaction];
break;
case SKPaymentTransactionStateFailed:NSLog(@"Transaction Failed");
[[SKPaymentQueue defaultQueue] finishTransaction:transaction];
NSLog(@"error: %@", transaction.error.localizedDescription);
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Sorry"
message:transaction.error.localizedDescription
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
}
}
}
当我按下购买按钮时,它要求使用“使用现有的 Apple ID”登录,并且如果输入了沙盒用户 ID,则工作正常。 但是,如果我在“iCloud”和“iTunes & App Store”的手机设置中使用免费的 Apple ID 登录,则上述代码将转到 SKPaymentTransactionStateFailed 案例。同时,如果我尝试在其他应用程序上购买东西,它会要求从 App Store 购买并从底部弹出。
请任何人告诉我上面屏幕截图所示的购买方式,即使用户已经登录了 iTunes 和 App Store。提前致谢。
【问题讨论】:
-
没有mula saag 可以回答吗?
标签: objective-c testing in-app-purchase itunes storekit