4

我已经搜索并找不到任何方法来延迟显示消息:“您的购买成功”以等待验证收据完成。

我试图引用该行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;
                }
            }
        }
    }
4

1 回答 1

5

基本上没有办法延迟“购买成功”的消息。

但是您可以在验证收据后显示附加警报,向用户显示验证结果。

于 2016-05-19T07:25:51.007 回答