Scenario:
Use a GooglePlay-Code to redeem item. On some devices this leads to an crash with the following message. I tested this on four devices and it crashed on two of them (version 0.11.2)
It seems gdx-pay tries to convert a null String to JSON.
`
Exception java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1032, result=-1, data=Intent { (has extras) }} to activity {XXX.android.AndroidLauncher}: java.lang.NullPointerException
Scenario: Use a GooglePlay-Code to redeem item. On some devices this leads to an crash with the following message. I tested this on four devices and it crashed on two of them (version 0.11.2)
It seems gdx-pay tries to convert a null String to JSON.
` Exception java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1032, result=-1, data=Intent { (has extras) }} to activity {XXX.android.AndroidLauncher}: java.lang.NullPointerException
android.app.ActivityThread.deliverResults (ActivityThread.java:3500) android.app.ActivityThread.handleSendResult (ActivityThread.java:3543) android.app.ActivityThread.access$1200 (ActivityThread.java:159) android.app.ActivityThread$H.handleMessage (ActivityThread.java:1364) android.os.Handler.dispatchMessage (Handler.java:99) android.os.Looper.loop (Looper.java:176) android.app.ActivityThread.main (ActivityThread.java:5419) java.lang.reflect.Method.invokeNative (Method.java) java.lang.reflect.Method.invoke (Method.java:525) com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1046) com.android.internal.os.ZygoteInit.main (ZygoteInit.java:862) dalvik.system.NativeStart.main (NativeStart.java)
Caused by java.lang.NullPointerException:
org.json.JSONTokener.nextCleanInternal (JSONTokener.java:116) org.json.JSONTokener.nextValue (JSONTokener.java:94) org.json.JSONObject. (JSONObject.java:154)
org.json.JSONObject. (JSONObject.java:171)
com.badlogic.gdx.pay.android.googleplay.billing.converter.InAppPurchaseDataToTransactionConverter.convertJSONPurchaseToTransaction ()
com.badlogic.gdx.pay.android.googleplay.billing.converter.PurchaseResponseActivityResultConverter.convertToTransaction ()
com.badlogic.gdx.pay.android.googleplay.billing.V3GoogleInAppBillingService.convertPurchaseResponseDataToTransaction ()
com.badlogic.gdx.pay.android.googleplay.billing.V3GoogleInAppBillingService.access$300 ()
com.badlogic.gdx.pay.android.googleplay.billing.V3GoogleInAppBillingService$2.handleResultOk ()
com.badlogic.gdx.pay.android.googleplay.billing.V3GoogleInAppBillingService$2.onEvent ()
com.badlogic.gdx.pay.android.googleplay.billing.V3GoogleInAppBillingService.onGdxPayActivityEvent ()
com.badlogic.gdx.pay.android.googleplay.billing.V3GoogleInAppBillingService.access$800 ()
com.badlogic.gdx.pay.android.googleplay.billing.V3GoogleInAppBillingService$V3GoogleInAppBillingServiceAndroidEventListener.onActivityResult ()
com.badlogic.gdx.backends.android.AndroidApplication.onActivityResult ()
android.app.Activity.dispatchActivityResult (Activity.java:5563)
android.app.ActivityThread.deliverResults (ActivityThread.java:3496)
android.app.ActivityThread.handleSendResult (ActivityThread.java:3543)
android.app.ActivityThread.access$1200 (ActivityThread.java:159)
android.app.ActivityThread$H.handleMessage (ActivityThread.java:1364)
android.os.Handler.dispatchMessage (Handler.java:99)
android.os.Looper.loop (Looper.java:176)
android.app.ActivityThread.main (ActivityThread.java:5419)
java.lang.reflect.Method.invokeNative (Method.java)
java.lang.reflect.Method.invoke (Method.java:525)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1046)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:862)
dalvik.system.NativeStart.main (NativeStart.java)
`