android - 如何使用 Play Billing Library 手动续订?

标签 android google-play play-billing-library

我正在使用 Play Billing Library v1.0 用于 Android 应用中的应用内结算支持,并希望允许用户在其 Activity 期间手动续订订阅以将其延长适当的期限。

对于不同的促销 Activity (黑色星期五、新年等),当用户可以以折扣价延长订阅时,它会很方便。

据官方documentation ,这个行为真的可以实现。 但是我没有找到有关如何实现它的信息。

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

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

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

“您已经订阅了 XXXXX [确定]”

出现错误信息。

我还尝试使用 .addOldSku() 构建器方法并在此处传递相同的 sku,但这也无济于事。

最佳答案

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

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

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

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

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

关于android - 如何使用 Play Billing Library 手动续订?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47757012/

相关文章:

android - 在应用程序内购买似乎被多次调用

android - 多次测试订阅

android - Android : Suggestions for test application 蓝牙开发入门

android - 什么是android :layout_marginStart

android - 在 Google Play 开发者控制台中上传 APK 时出错

android - 如何解决 Android 应用中的 Google 身份验证问题?

java - 当我执行代码时,sqlite 中发生错误= CursorIndexOutOfBoundsException

android - Div 底部工具栏出现在 iPhone 但不是在 Android 上

Android每日每周排行榜实现?

in-app-billing - 如何从 Google Play Billing 获取购买状态?