ssk blog

バンコクで働くエンジニアのメモ

Androidの消費型のアプリ内課金で「このアイテムは既に所有しています。」 と表示され購入できないAndroidの課金バグ

[Evernoteのメモシリーズ]

2016年6月頃にv3の消費型のアプリ内課金を実装中に遭遇したバグに関するメモです。

発生する状況

課金処理中に通信が切れ、 再度購入しようとすると 「このアイテムは既に所有しています。」 と表示され購入できない

f:id:ssktm:20171109204631p:plain

原因

GooglePlayクライアントがデバイス上に購入のキャッシュしているからです。デバイス上のGooglePlayに課金情報をキャッシュすることにより、APIの返答時間をスピードアップできますが、上記のような弊害もあるようです。
解決方法は、端末の再起動です。


このブログが仕組みを理解するのに参考になりました。
ありがとうございました!!!

他のアプリでもこのバグの対応として以下のような画面を用意しているのでこのバグで苦しんでいる人は、ヘルプページを作って誘導するようにしましょう!

対応①

対応②


このバグが現在あるかわかりませんが、誰かの手助けになればと思います。