我在我的 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 但使用硬編碼值不是一個好主意。我應該如何實現這一目標?
1 回答

皈依舞
TA貢獻1851條經驗 獲得超3個贊
我使用舊版本的 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();
添加回答
舉報
0/150
提交
取消