アプリ内購入に関する特定の状況について質問があります。
アプリでコインを購入するための消耗品があります。
- Use は IAP で $.99 のコイン パックを購入します
- サーバーにリクエストを送信して、購入を記録し、コインをアカウントに追加します(これらのコインは複数のデバイス間で共有され、サーバーがここで作業を行います)
- IAP のトランザクションを完了する
問題は、サーバーへのリクエストがタイムアウトまたは失敗した場合に何をすべきかということです。ユーザーはお金を使いましたが、コインを受け取ることはありません。その時点でもう一度購入しようとすると、購入したものがダウンロードされていないというエラーが表示されます。
「トランザクションの復元」オプションを見たことがありますが、ここで適用する方法がわかりません。アプリのどこかにボタンがないようにしたいです。
このアプリはまだリリースされていないことを心配しないでください。また、このアプリは MonoTouch を使用して C# で記述されていますが、Objective-C の回答は大歓迎です。