9

我在 Android 应用中使用Play Billing Library v1.0 来支持应用内计费,并希望允许用户在订阅有效期间手动续订订阅,以将其延长适当的时间。

当用户可以通过折扣延长订阅时,它对于不同的销售(黑色星期五、新年等)非常方便。

根据官方文档,这种行为确实可以实现。但我没有找到如何实现它的信息。

我正在使用以下标准代码购买订阅:

BillingFlowParams.Builder builder = BillingFlowParams.newBuilder()
        .setSku(skuId).setType(SkuType.SUBS);
int responseCode = mBillingClient.launchBillingFlow(activity, builder.build());

如果我再次尝试购买相同的订阅,

“您已经订阅了 XXXXX [OK]”

出现错误信息。

我也尝试使用.addOldSku()builder 方法并在这里传递相同的 sku,但它也无济于事。

4

2 回答 2

2

使用 In-app Billing API,即使订阅未设置为自动续订,用户也可以在订阅有效期间续订。如果用户在订阅处于活动状态时购买订阅,则以当前费率将其延长适当的期限。

例如,Achilles 订阅了 Modern Hoplite 应用程序。他的订阅目前将于 8 月 1 日到期。7 月 10 日,他以当前价格购买了 1 个月的订阅。这一个月已添加到他现有的订阅中,因此订阅现在将于 9 月 1 日到期。

由应用程序使用适当的 UI 来传达这一点。例如,如果用户没有有效订阅,则应用程序可能有一个购买按钮,但如果用户有订阅,则该按钮可能会显示续订。

请查看有关应用内的更多详细信息,请参阅以下链接:

https://developer.android.com/google/play/billing/billing_subscriptions.html

于 2017-12-15T07:58:53.847 回答
1

请升级您的Play Billing Library v1.0 Play Billing Library v5

在最新版本的应用内结算中,

  • 用户可以手动扩展现有订阅。订阅会延长适当的时间。

  • 用户可以在订阅处于活动状态时升级或降级订阅。旧订阅被取消,未使用的部分按比例应用于新订阅。

阅读版本说明

于 2017-12-20T05:40:29.837 回答