我在测试我的应用内结算方面遇到了麻烦 (使用Google Play应用内结算第3版API)
问题:
退款的应用内购买仍然存在于购买清单中,由BillingClient.queryPurchases()
提供。
当我在1月份尝试退款时,退款商品已从购买清单中消失。
我做了什么:
BillingClient.queryPurchases()
。最少检查代码:
private val client: BillingClient // provided
fun check() {
// client.startConnection() already completed here
client.queryPurchases(BillingClient.SkuType.INAPP)
.run {
purchasesList
.map { it.originalJson }
.forEach { Log.d("billing", "json = $it") }
}
}
我想做什么:
我想取消所有测试购买。
有没有人有任何建议? 提前谢谢。
答案 0 :(得分:1)
如果您的取消未从查询结果中删除购买,则可以使用它们。当您进行新查询并且可以再次购买时,它们将不再可用。
int response = client.consumePurchase(3, packageName, purchaseToken);
托管应用内商品属于消费品,但订阅却不是。
答案 1 :(得分:0)
根据此documentation,目前,应用内结算API不支持以编程方式取消购买应用内的订阅。然后,在用户取消订阅之后,订阅仍然有效,直到到期日期。因此,它会在Play商店应用中保持可见状态,直到订阅到期为止。您可以查看此support page以获取更多信息。