0

iOS デバイスにアプリを新規インストールします。(私はそれを削除し、GCアカウントからサインオフしました)。

アプリの起動後、「paymentQueue: updatedTransactions:」が呼び出されます。との取引が 1 件ありtransactionState' == SKPaymentTransactionStatePurchasedます。(実際、私のアプリが持っている唯一の iAP です)。

そして、GC Sandbox Login ViewController が表示されます。

iTunes アカウントまたは GC アカウントのどちらにもログインしていないのに、iAP オブジェクトが Bought State を取得するのはなぜですか?

Game Center にはログインしていません。しかし、iTunes Store Sandbox アカウントでログインしているのかどうかはよくわかりません。(それも存在しますか?) もしそうなら、どうすればログオフできますか?

アプリの「復元」ボタンをテストできるようにしたいのですが、関数が既に呼び出されており、アイテムが購入済みとして表示されているため、テストできません... オブザーバーを追加すると関数も呼び出されるのはなぜですかSKPaymentQueue? _ 未完了のトランザクションを確認するには? しかし、iTunesアカウントにログインすることは想定されていないため、そうすべきではありません...

アイデアがあれば教えてください。これは私を夢中にさせます。

4

1 に答える 1

1

トランザクションが処理された後に呼び出しに失敗しているようです[SKPaymentQueue finishTransaction:]。IAP システムは、それが行われるまで、起動ごとにトランザクションの配信を試み続けます。そのため、トランザクションの処理が完了したらその呼び出しを追加するだけで、準備は完了です。

于 2012-09-26T19:53:13.813 に答える