我开发了Chrome扩展程序,我正在尝试使用google.payments.inapp API集成应用程序内订阅,但是在测试时我发现如果用户取消应用程序内订阅,则API的状态显示ACTIVE而不是CANCELED 。以下是我用来获取用户购买的应用内订阅的代码
google.payments.inapp.getPurchases({
'parameters': {env: "prod"},
'success': ami_onLicenseUpdate,
'failure': ami_onLicenseUpdateFailed
});
即使用户已取消订阅,我也会收到以下成功回复
{"response":{"details":[{"kind":"chromewebstore#payment","itemId":"xxxxxxxxx","sku":"xxxxxx_01","createdTime":"1509281736005","state":"ACTIVE"},{"kind":"chromewebstore#payment","itemId":"xxxxxxx","sku":"xxxxxxx_02","createdTime":"1508736958450","state":"ACTIVE"}]}}
我如何知道用户是否已取消订阅?
答案 0 :(得分:1)
经过一些研究和测试后,我发现如果用户处于订阅试用期并且用户取消订阅,Google付款API会将订阅作为有效订阅,一旦试用期结束,它将不会返回任何与许可相关的信息。 api响应中的订阅。通过这种方式,我们可以识别用户是否有有效订阅。
答案 1 :(得分:0)
对于那些使用订阅的人,请注意。
来自Chrome网上应用店小组:
取消后,用户仍可以访问您的商品,直到下一个计费周期开始,并且扩展期在订阅期(每月或每年)结束后应停止工作。因此,在取消开始之后,API仍会以“活动”的形式返回。