Google Play In-app Billing V3 を使用して、一定期間有効なアイテムを販売するアプリケーションに取り組んでいます。ユーザーが購入した後、購入データをサーバーに送信し、成功した場合はすぐに消費します。サーバーは、期間が終了するまで、この特定のユーザーに追加サービスへのアクセスを許可します。注: アプリ内サブスクリプションは使用していません。
支払いが行われないサンドボックス モードでテスト ユーザーを使用して購入をテストしています。それらのほとんどは成功しており、このフローはうまく機能しています。ただし、購入が Google によってすぐにキャンセルされることがあります。Google Checkout アカウントの注文履歴に、次の行が表示されます。
「保護のため、Google はこの注文をキャンセルしました。取引は不正と見なされました。」.
これが発生した場合でも"purchaseState": 0
、購入データに成功を示す が表示されます。また、この製品を消費しようとしても成功します (呼び出しIInAppBillingService.consumePurchase(version, package, token)
は 0 を返します)。後で在庫を照会すると、購入がなく (したがって、払い戻し/キャンセルがない)、同じアイテムを自由に再度購入できることがわかります。これは、通常のキャンセルされていない状態と同じ動作です。
- Google は、テスト サンドボックスの外で同じように注文をキャンセルすることがよくありますか?
- 正常に購入および消費されたアイテムは、開発者の管理外の理由でキャンセル (つまり、返金) できますか?
- 消費した商品のキャンセルを知ることはできますか?