iOS:无法在沙箱环境中恢复耗材购买

时间:2016-02-29 10:46:47

标签: ios in-app-purchase

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

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

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

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)")
        }
    }

1 个答案:

答案 0 :(得分:1)

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