简体   繁体   中英

Unable to execute billing on LG Nexus 5X

My app has in-app purchases. I use the billing library:

def billing_version = "4.1.0"
implementation("com.android.billingclient:billing:$billing_version")
implementation("com.android.billingclient:billing-ktx:$billing_version")

I observe in Firebase, that user with LG Nexus 5X (Android 8.1) can't make the purchase. He tried several times, but gets the same problem :

致命异常

Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{studio.yatoo.calendarwidget/com.android.billingclient.api.ProxyBillingActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.IntentSender android.app.PendingIntent.getIntentSender()' on a null object reference
   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2778)
   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2856)
   at android.app.ActivityThread.-wrap11()
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1589)
   at android.os.Handler.dispatchMessage(Handler.java:106)
   at android.os.Looper.loop(Looper.java:164)
   at android.app.ActivityThread.main(ActivityThread.java:6494)
   at java.lang.reflect.Method.invoke(Method.java)
   at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)

Caused by java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.IntentSender android.app.PendingIntent.getIntentSender()' on a null object reference
   at com.android.billingclient.api.ProxyBillingActivity.onCreate(com.android.billingclient:billing@@4.1.0:11)
   at android.app.Activity.performCreate(Activity.java:7009)
   at android.app.Activity.performCreate(Activity.java:7000)
   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1214)
   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2731)
   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2856)
   at android.app.ActivityThread.-wrap11()
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1589)
   at android.os.Handler.dispatchMessage(Handler.java:106)
   at android.os.Looper.loop(Looper.java:164)
   at android.app.ActivityThread.main(ActivityThread.java:6494)
   at java.lang.reflect.Method.invoke(Method.java)
   at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)

All other users have no such problem. Only user with LG Nexus 5X. Could somebody help, how to solve this problem?

As I stated in my comment below the question, I get the feeling this is safe to ignore. My app is relatively niche, and the probability of someone with a device this old, with this OS version, making a purchase so soon is almost zero. I wish Google would be more explicit about their automated testing devices, as I've wasted time chasing similar, seemingly impossible bugs before, but this smells like it's safe to ignore (with caution).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM