3

自動更新サブスクリプションを実装しようとしています。問題はSKPaymentQueueSKPaymentQueue.defaultQueue().finishTransaction(transaction)に電話してSKPaymentTransactionを終了できないことです。以上のようにSKPaymentQueueは、自動更新可能なサブスクリプション製品のSKPaymentTransactionを完了しません。

func paymentQueue(queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction]) { 
    if let transactions = transactions as? [SKPaymentTransaction] { 
     for transaction in transactions { 
      switch transaction.transactionState { 
      case .Purchasing: 
       break 
      case .Purchased: 
       queue.finishTransaction(transaction) // finish transaction 
       self.purchasedWithTranasction(transaction) 
      case .Failed: 
       queue.finishTransaction(transaction) // finish transaction 
       self.failedWithTransaction(transaction) 
      case .Restored: 
       queue.finishTransaction(transaction) // finish transaction 
       self.restoredWithTransaction(transaction) 
      case .Deferred: 
       queue.finishTransaction(transaction) // finish transaction 
      } 
     } 
    } 
} 

paymentQueue:updatedTransactions:方法において、queue.finishTransaction(transaction)が呼び出されます。通常、トランザクションは終了し、もう滞在しません。

しかし、私は再びアプリケーションを実行すると、そのトランザクションはまだ終了していません。ちなみに、私はAppDelegateのトランザクションオブザーバを以下のように設定しました。したがって、アプリが起動すると、残りのトランザクションはpaymentQueue:updatedTransactions:を呼び出して処理を開始します。それは私の期待とは違います。

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { 
    // add transaction observer 
    SKPaymentQueue.defaultQueue().addTransactionObserver(CargoBay.sharedManager()) 

    .... 

    return true 
} 

皆さんはこの問題について考えていますか? SKPaymentQueue.defaultQueue().finishTransaction(transaction)が取引を終了しないケースがありますか?

+0

こんにちは@Mikeあなたはこれまでにこの質問の一番下に入りましたか? – WickedW

答えて

0

もう一度同じトランザクションが表示されるのではなく、iTunesサンドボックスからの新しい自動更新トランザクションが表示される可能性はありますか?

iTunesサンドボックスで自動更新購読をテストすると、人為的に更新レートを上げます。これにより、数分ごとに新しいトランザクションが表示されます。 Testing Your App and In-App Purchase Productsから

テスト環境で自動再生可能なサブスクリプションをテストし、持続時間が圧縮されていることに注意してください。さらに、テスト契約は最大6回まで自動更新されます。

  • 1週間:3分
  • 1ヶ月:5分
  • 2ヶ月:10分
  • 3ヶ月:15分
  • 6ヶ月:30分
  • 1年:1時間
関連する問題