如何使用GoogglePlay开发人员API检测Android应用内购买的计划变更?

时间:2016-05-20 06:13:29

标签: android in-app-purchase in-app-billing in-app-subscription

thansk阅读

上下文

我们提供点播视频流,用户可以通过每月或每年订阅Android,ios&网络

因此,无论何时在Android上进行购买,该应用都会向我们的服务器发送一个( purchaseToken,subscriptionID)对,我们使用this google developer API在我们的数据库中保留订阅信息

问题

最近,我们添加了对用户更改Android计划的支持。在Google方面,资金按比例分配,新订阅已创建。但是,旧订阅的开始和结束时间在开发人员API上仍然相同。

我们无法确定旧订阅已取消并替换为新订阅,因为有效负载(defined here)仅告知您上述自动续订状态。另外,1的取消原因是任何不是用户发起的,而不仅仅是计划变更。

我正在努力解决,但需要了解一些事情,例如:

  • 当您从更昂贵,更长的计划(每年)切换到更短的计划(每月)时,所有剩余的资金是否按比例分配,有效地使您的新订阅持续时间超过正常持续时间?

似乎很可能,基于此:

  

Google Play会取消旧的SKU,并按比例向用户提供其未使用的订阅时间值。 Google Play会将此赠送金额应用于新订阅,并且在积分用完之后才会开始向用户收取新订阅费用。

  • 当您取消较新的订阅时,是否会以取消正常订阅的方式发生? (即,订阅不会自动续订,但应该在其持续时间结束前保持有效),或者某些信用将存储在谷歌中以便以后使用?

1 个答案:

答案 0 :(得分:0)

  

但是,旧订阅的开始和结束时间在开发人员API上仍然相同。

这看起来很意外,可能是一个错误。

  

当您从更昂贵,更长的计划(每年)切换到更短的计划(每月)时,是否会按比例分配所有剩余资金,从而有效地使您的新订阅的持续时间超过正常持续时间?

是的,原始订阅的剩余余额将应用于新订阅。一旦余额用完,新的结算周期将开始。最好在文档here中解释。

  

当您取消较新的订阅时,是否会以取消正常订阅的方式发生? (即,订阅不会自动续订,但应该在其持续时间结束前保持有效),或者某些赠送金额将存储在谷歌中以供日后使用?

我相信会发生的事情是订阅不会自动续订(正如您所说),但订阅将保持有效,直到之前订阅的余额用完为止。