41

アプリ内課金を実装しましたが、問題が発生しています。これが私が見るものです。

  1. 商品を注文する
  2. 注文が完了するまでしばらくお待ちください
  3. 購入に時間がかかる場合、ユーザーは戻るボタンを押して購入をキャンセルします
  4. 私のアプリは、購入がキャンセルされたという通知を受け取り、これを確認します
  5. ユーザーと私の両方に、購入がキャンセルされたことを示すメールが届きます
  6. ユーザーがアイテムを再度購入しようとすると、マーケットは「このアイテムの保留中の注文が既にあります」というエラーをスローします。
  7. 応答コードは「サービスを利用できません」です
  8. トランザクションを復元してもトランザクションは発生しません
  9. このアカウントでこのアイテムを購入することはできません

これに関するいくつかの情報をウェブで見つけました。 http://www.google.com/support/forum/p/Android+Market/thread?tid=375490c831e02ab5&hl=ja http://code.google.com/p/marketbilling/issues/detail?id=39

Google に連絡したところ、調査中というオートボットの回答がありました。

しかし、これを引き起こすために何かできることがあるのだろうかと思っています。

ああ、PendingIntent が適切であることも確認しました。私は成功した注文をしました。

更新: これは、これを見た顧客への在庫メールです。いずれにしても、Android マーケットはますます良くなってきているようです。

こんにちは、

この「保留中の注文」エラーは、残念ながら私が制御できない Android マーケットのバグです。

この問題の優先度を上げるには、次のウェブ フォームから Google に連絡してください。 http://www.google.com/support/androidmarket/bin/request.py?contact_type=market_phone_tablet

このための内部追跡番号であるバグ 5126349 を参照するように伝えることができます。

4

1 に答える 1

5

ここに示されているリンクのようなアプリ内課金には問題がありますが (私は問題 39 に積極的にコメントしていました)、Google からの 500 応答を引き起こす可能性がある、チェックする価値のあるものもいくつかあります。

つまり、「トランザクションの復元」とその呼び出しの悪用です。その呼び出しの悪用はユーザーごとに行われ、Google アカウントが 500 で数日間ブロックされるのを見てきました。実装方法によっては、開発中に確実に発生する可能性があります。

ここでの最善のアドバイスは、テスターをより多くのユーザー (または異なるプライマリ Google アカウントを持つデバイス) に拡大し、さまざまなバージョンの Android マーケットを実行することです。誰かから肯定的な反応を 1 つ得ることができれば、ほとんどの場合、問題はなく、残りは Google のドアにあります。

于 2011-12-21T20:03:17.787 に答える