После обновления Библиотеки биллинга 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. У кого-то есть идея, почему это происходит сейчас?