在BillingClient.launchBillingFlow期间AndroidPlay商店崩溃

尝试为应用内项目启动计费时,我收到以下错误。

java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“java.lang.String android.content.Intent.getStringExtra(java.lang.String)”

代码很简单。用户选择一个项目。然后我将该项目传递给 querySkuDetailsAsync。我得到并看到结果。由于 API 原因,我然后调用...

SkuDetails skuDetails = new SkuDetails(skuDetails.getOriginalJSON());
BillingFlowParams flowParams = BillingFlowParams.newBuilder().setSkuDetails(skuDetails).build();
BillingResult billingResult = client.launchBillingFlow(activity, flowParams);

然后,大多数时候,我得到了 NPE。一切正常。我不知道是什么变化导致了这个问题。

请注意,我确实尝试过直接传递 skuDetails,以防 JSON 是问题所在。它没有用。

计费库不是开源的,所以我不知道如何解决这个问题。

回答

我找到了解决方案。如果我在调用“launchBillingFlow”之前调用activity.setIntent(new Intent()),错误就会消失。似乎是现在关闭源的计费库中的一个错误。


以上是在BillingClient.launchBillingFlow期间AndroidPlay商店崩溃的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>