相比国内移动支付依赖于订单号校验是否为新订单,Play商店的逻辑是不太一样的,对于Play商店而言,用户购买了你的商品后,还得“消费”掉这个商品才可以继续购买下一个同类型的商品。
解决此问题的方法,不是你能搜到的各大论坛给出的什么“清缓存”,而是有以下两个方法:
1.消费掉这个商品:
- 使用支付回调的purchase.getPurchaseToken()获取token;
- 使用token调用:
BillingClient.consumeAsync(purchaseToken, new ConsumeResponseListener());
完成。
2.去后台发起退款:
进入 Google Play Colsole,左侧“订单管理”,进入后找到你的测试订单:
发起退款即可。