升级到Google Play结算库3.0后,出现IllegalArgumentException

问题描述

将Google Play结算库升级到3.0版后,有时我会在java.lang.IllegalArgumentException中得到BillingFlowParams$Builder.build。有时,因为我自己无法复制它,而是在Google Play控制台中获取崩溃报告。这些报告在2.1.0版本中没有发生。

这就是我所说的。首先,我querySkuDetailsAsync得到skuDetailsList。为此,我叫billingManager.initiatePurchaseFlow(skuDetailsMap.get(selectedPackage));。这是下面的方法

    public void initiatePurchaseFlow(SkuDetails skuDetails) {
        Runnable purchaseFlowRequest = () -> {
            BillingFlowParams flowParams = BillingFlowParams.newBuilder().setSkuDetails(skuDetails).build();
            int responseCode = billingClient.launchBillingFlow(activity,flowParams).getResponseCode();
            if (responseCode != 0) {
                // Failed
            }
        };
        executeServiceRequest(purchaseFlowRequest,true);
    }

这在2.1.0版本中很好用,但是.build()有时在3.0中失败。有人知道为什么现在会发生这种情况?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)