iOS: 无法在沙盒环境中恢复消耗品购买

iOS: Can't restore consumable purchases in the sandbox environment

我已经创建了一些消耗性 IAP 并在沙盒环境中对其进行了测试。 但是,即使我购买的商品很少,恢复购买也不会 return 任何交易...

我如何测试它? 这是我的代码

激活恢复购买的按钮触发器

if (SKPaymentQueue.canMakePayments()) {
                print("restore payment")
                SKPaymentQueue.defaultQueue().restoreCompletedTransactions()
            }

恢复购买paymentQueueRestoreCompletedTransactionsFinished

func paymentQueueRestoreCompletedTransactionsFinished(queue: SKPaymentQueue) {
        print("\(queue.transactions.count)")
        for transaction:AnyObject in queue.transactions
        {
            let trans : SKPaymentTransaction = transaction as! SKPaymentTransaction
            //var identifier : NSString = trans.payment.productIdentifier
            let identifier : NSString = trans.originalTransaction!.payment.productIdentifier

            print("pdi \(identifier)")
        }
    }

Consumable products 无法从苹果服务器恢复。对于消耗品,您必须在自己的服务器上手动管理购买清单。 如果您想要可恢复的产品,那么您只需在 iTunes 中使用 Non-Consumable 产品即可。