私は自分のアプリケーションで、Google Play in app purchase の v3 API を実装しました。すべてがうまくいきますが、奇妙なことは、テスト アカウントを使用してテストし、マーチャント アカウントから注文をキャンセルしたときです。私のアプリでは、アイテムがテスト ユーザーによって所有されており、すべてのプレミアム機能を使用できることが示されています。
どうすればこれを取り除くことができるかについての提案。
完全なアンインストールと再インストールを使用して試しました。
私は自分のアプリケーションで、Google Play in app purchase の v3 API を実装しました。すべてがうまくいきますが、奇妙なことは、テスト アカウントを使用してテストし、マーチャント アカウントから注文をキャンセルしたときです。私のアプリでは、アイテムがテスト ユーザーによって所有されており、すべてのプレミアム機能を使用できることが示されています。
どうすればこれを取り除くことができるかについての提案。
完全なアンインストールと再インストールを使用して試しました。
あなたが見ているのは、Google Play のデバイス側のキャッシュだと思います。ユーザーが電話を再起動するとクリアされますが、それ以外の場合は、Google Play が Google サーバーからキャッシュを更新するまで待つ必要があります。私は時々反対の問題を抱えています... ユーザーの購入ですが、何らかの理由で Google Play は Google のサーバーから無効な応答を受け取り、購入されていない結果を数日間キャッシュします。デバイスを再起動し、深刻なケースではアプリケーション リストの Google Play データを消去すると、Play は Google からすべてを再同期します。
アカウントで以前に購入したことがあり、それが消耗品ではない場合、再度購入しようとすると、サーバーから「アイテムを購入しました」というステータスが送信されます。(復元トランザクションのように)
それ以外の場合は、サーバーからの応答のすべてのフィールドを確認してください。
応答コードを確認してください: http://developer.android.com/google/play/billing/billing_reference.html
BILLING_RESPONSE_RESULT_USER_CANCELED 1 ユーザーがダイアログを押し戻すかキャンセルした