我正在使用 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/