猿问

如何在应用程序订阅android中使用按比例分配模式

我在我的 Android 应用程序中每月和每年使用两个订阅计划。如果用户订阅了月度计划,那么我想为用户提供升级到年度计划的选项。我已经阅读了我需要使用 BillingFlowParams.ProrationMode 的官方文档,但我无法弄清楚我应该如何实现它。


这是代码示例:


BillingFlowParams flowParams = BillingFlowParams.newBuilder()

        .setSkuDetails(skuDetails)

        .setOldSku(oldSku)

        // I need to replace replaceSkusProrationMode to DEFERRED

        // how do I get complete path to DEFERRED

        .setReplaceSkusProrationMode(replaceSkusProrationMode)

        .build()

int responseCode = billingClient.launchBillingFlow(activity, flowParams);

使用此链接我得到 DEFERRED 的 int 值是 4 但使用硬编码值不是一个好主意。


我应该如何实现这一目标?


白衣染霜花
浏览 80回答 1
1回答

皈依舞

我使用旧版本的 billingclient 升级到新版本解决了我的问题。我改为implementation 'com.android.billingclient:billing:2.0.2'从implementation 'com.android.billingclient:billing:1.0'然后我得到一个 setReplaceSkusProrationMode 选项。这是我现在的使用方式:BillingFlowParams flowParams1 = BillingFlowParams.newBuilder()                         .setOldSku(monthly_test)                         .setReplaceSkusProrationMode(BillingFlowParams.ProrationMode.DEFERRED)                         .setSkuDetails(yearly_test)                         .build();
随时随地看视频慕课网APP

相关分类

Java
我要回答