iOS - 如何延迟显示消息 "purchase was successful" 以等待验证收据完成
iOS - How to delay of showing message "purchase was successful" to wait until the validation receipt finished
我已经搜索过,但找不到任何方法来延迟显示消息:"Your purchase was successful" 等待验证收据完成。
我尝试引用 SKPaymentQueue.defaultQueue().finishTransaction(transaction as! SKPaymentTransaction)
行,但消息仍然触发。
func paymentQueue(queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction]) {
print("Received Payment Transaction Response from Apple");
for transaction:AnyObject in transactions {
if let trans:SKPaymentTransaction = transaction as? SKPaymentTransaction{
switch trans.transactionState {
case .Purchased:
print("Product Purchased");
SKPaymentQueue.defaultQueue().finishTransaction(transaction as! SKPaymentTransaction)
// validate receipt and update money
validateReceipt(trans.payment.productIdentifier)
break;
case .Failed:
print("Purchased Failed");
SKPaymentQueue.defaultQueue().finishTransaction(transaction as! SKPaymentTransaction)
self.indicator.Hide()
break;
case .Restored:
print("restored")
SKPaymentQueue.defaultQueue().finishTransaction(transaction as! SKPaymentTransaction)
//[self restoreTransaction:transaction];
self.indicator.Hide()
break;
default:
break;
}
}
}
}
基本没办法延迟"purchase was successful"消息
但您可以在验证收据后显示额外的警报,向用户显示验证结果。
我已经搜索过,但找不到任何方法来延迟显示消息:"Your purchase was successful" 等待验证收据完成。
我尝试引用 SKPaymentQueue.defaultQueue().finishTransaction(transaction as! SKPaymentTransaction)
行,但消息仍然触发。
func paymentQueue(queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction]) {
print("Received Payment Transaction Response from Apple");
for transaction:AnyObject in transactions {
if let trans:SKPaymentTransaction = transaction as? SKPaymentTransaction{
switch trans.transactionState {
case .Purchased:
print("Product Purchased");
SKPaymentQueue.defaultQueue().finishTransaction(transaction as! SKPaymentTransaction)
// validate receipt and update money
validateReceipt(trans.payment.productIdentifier)
break;
case .Failed:
print("Purchased Failed");
SKPaymentQueue.defaultQueue().finishTransaction(transaction as! SKPaymentTransaction)
self.indicator.Hide()
break;
case .Restored:
print("restored")
SKPaymentQueue.defaultQueue().finishTransaction(transaction as! SKPaymentTransaction)
//[self restoreTransaction:transaction];
self.indicator.Hide()
break;
default:
break;
}
}
}
}
基本没办法延迟"purchase was successful"消息
但您可以在验证收据后显示额外的警报,向用户显示验证结果。