我有一个应用程序提供“恢复”按钮,供用户恢复以前购买的产品。
但如果用户之前没有购买过任何产品,那么他点击“恢复”按钮
([[SKPaymentQueue defaultQueue] restoreCompletedTransactions];)
该程序将等待苹果的响应。既不:
(void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions
也不是
(void)paymentQueue:(SKPaymentQueue *)queue restoreCompletedTransactionsFailedWithError:(NSError *)
错误被调用。
有没有推荐的方法来处理这类问题?
答案 0 :(得分:0)
如果网络或Apple服务器关闭,则必定存在错误。在物理设备上检查它。此外,如果您想检查是否有任何产品,您可以检查如下;
- (void) paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue
{
if([queue.transactions count]>0){
NSLog(@"received restored transactions: %i", queue.transactions.count);
}
else {
NSLog(@"No Product to restore");
}