2011-07-03 5 views
0

アプリ内購入を使用するアプリケーションを作成しています。現在、商品IDを取得することができ、完成までのアプリ内購入を正常にテストできます。ログインからキャンセルすると、アプリ内購入でSKPaymentCancelledが送信されないUIAlertView

私が抱えている問題はエラー処理です。私がしたかったのは、SKPaymentCancelledが失敗していない限り、トランザクションが失敗したときにUIAlertViewを表示することでした。この場合、購入前に通常の状態に戻すだけです。問題は、今すぐ購入ボタンをクリックし、次に購入を行うためにOKをクリックすると、ストアがユーザー名とパスワードを要求することです。その時点でキャンセルをクリックすると、SKPaymentCancelledは送信されません。代わりに、私のUIAlertViewが表示されます。つまり、キャンセルされた支払いとして扱われません。私は、ユーザーがキャンセルすると、たとえログイン画面でさえ警告が鳴らないようにするために、この状態をどのように処理すべきか疑問に思っています。

ありがとうございました。

答えて

1

テストアカウントではなくLIVE iTunesアカウントを誤って使用しようとしていますか?私はちょうどサンドボックスを使用している間、私の現在のプロジェクトでそれを試みたし、間違ってLIVEアカウントを使用している場合は、その時点でキャンセルするとSKErrorUnknownを取得します。

同様に、それはサンドボックスの再生につながる可能性があります - プロジェクトの中でどのくらいのダウンタイムがサンドボックスの「一時的な」問題によって引き起こされたのか分かりません。

+0

私はLIVE iTunesアカウントを使用していません。それは間違いなくテストユーザーであり、私が自分の投稿で言ったように、テストユーザーを通して購入を行うことができます。私はいくつかのテストを行い、ログインがキャンセルされたときにSKErrorUnknownタイプを設定していることがわかりました。今のところ、SKErrorUnknownを受け取った場合、UIAlertViewをフラッシュしないようにコードを設定しています。他にも提案があれば、喜んで聞くことができます。あなたのご意見ありがとうございます。 – Jamie

+0

私は今朝サンドボックスを使っていろいろな奇妙なエラーを見ています。それは約5分間働いていましたが、今はエラー-1003以外何も得られません。私は、bugreport.apple.comでバグを報告しています。彼らが何かを壊していて、それがライブサービスにも影響しているかどうかによって、すでに知っているかもしれないし、そうでないかもしれないということです。彼らは通常、応答するのがとても良いです。 – Roger

+0

Rogerに感謝します。私はそれを行います。 – Jamie

関連する問題