iOS IAP 恢复不起作用
iOS IAP restore doesn't work
我有带 IAP 的 ios 应用程序。我以测试用户身份在沙盒中购买产品,一切正常。我收到收据并打包它。
然后我重新安装应用程序,我正在尝试恢复 IAP 并调用
SKPaymentQueue.defaultQueue().restoreCompletedTransactions()
下一个
paymentQueueRestoreCompletedTransactionsFinished(queue: SKPaymentQueue)
被调用。什么都没有恢复。
我想一定有
的电话
paymentQueue(queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction])
但是它不见了!收据也不存在。
必须有交易才能恢复(因为如果我再次购买产品,StoreKit 说它已经购买了)我做错了什么?
更新:
我要恢复的产品是不可续订的订阅。如果这是唯一要恢复的产品,Apple 不会 return 交易列表。如果购买了其他产品(例如,非消耗品)Apple return 的完整交易列表...
我在恢复购买前索要收据:
let receiptRefreshRequest: SKRequest = SKReceiptRefreshRequest()
receiptRefreshRequest.delegate = self
receiptRefreshRequest.start()
然后在响应后我进行恢复
public func requestDidFinish(request: SKRequest) {
if request == receiptRefreshRequest {
SKPaymentQueue.defaultQueue().restoreCompletedTransactions()
}
}
我有带 IAP 的 ios 应用程序。我以测试用户身份在沙盒中购买产品,一切正常。我收到收据并打包它。 然后我重新安装应用程序,我正在尝试恢复 IAP 并调用
SKPaymentQueue.defaultQueue().restoreCompletedTransactions()
下一个
paymentQueueRestoreCompletedTransactionsFinished(queue: SKPaymentQueue)
被调用。什么都没有恢复。 我想一定有
的电话paymentQueue(queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction])
但是它不见了!收据也不存在。
必须有交易才能恢复(因为如果我再次购买产品,StoreKit 说它已经购买了)我做错了什么?
更新:
我要恢复的产品是不可续订的订阅。如果这是唯一要恢复的产品,Apple 不会 return 交易列表。如果购买了其他产品(例如,非消耗品)Apple return 的完整交易列表...
我在恢复购买前索要收据:
let receiptRefreshRequest: SKRequest = SKReceiptRefreshRequest()
receiptRefreshRequest.delegate = self
receiptRefreshRequest.start()
然后在响应后我进行恢复
public func requestDidFinish(request: SKRequest) {
if request == receiptRefreshRequest {
SKPaymentQueue.defaultQueue().restoreCompletedTransactions()
}
}