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