【问题标题】:Received SKPaymentTransactionStateFailed but iTune processed payment收到 SKPaymentTransactionStateFailed 但 iTune 已处理付款
【发布时间】:2013-10-27 18:24:20
【问题描述】:
我们看到一些客户通过我们的 IAP 进行自动续订订阅,但在处理付款时收到 SKPaymentTransactionStateFailed
- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions
而当通过读取transaction.error检查事务错误时,是SKErrorUnknown。
我们如何防止这种情况发生?
【问题讨论】:
标签:
ios
storekit
in-app-purchase
【解决方案1】:
您无能为力,因为这是苹果服务器系统生成的错误。大概你已经通过通知用户/清理交易(总是在支付队列上调用finishTransaction:)和界面等来优雅地处理界面中的错误......
如果您真的想弄清楚发生了什么,您可能必须调试客户。他们是否有在 Apple 备案的过期信用卡?他们可以为其他应用而不是您的应用购买 appStore 吗?您是否注意到其他用户有此问题?其他客户能否成功购买此订阅?等等……
只要您的应用处理好 SKPaymentQueue 响应,并且其他客户可以成功购买,那么问题就出在您的应用上游,并且介于用户和 AppStore 之间。