githuboftigran / rn-range-slider

A native slider with range
MIT License
234 stars 130 forks source link

java.lang.IllegalArgumentException in crash report from Google Play Console for the Android App #64

Closed viranianish closed 3 years ago

viranianish commented 3 years ago

Hi,

Thanks for the awesome plugin that you have created.

I am getting this exception in the google play console almost twice every day though I am not able to regenerate it on my side.

java.lang.IllegalArgumentException: at android.view.MotionEvent.nativeGetAxisValue (MotionEvent.java) at android.view.MotionEvent.getX (MotionEvent.java:2377) at com.ashideas.rnrangeslider.RangeSlider.onTouchEvent (RangeSlider.java:35) at android.view.View.dispatchTouchEvent (View.java:13499) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at com.swmansion.gesturehandler.react.RNGestureHandlerRootView.dispatchTouchEvent (RNGestureHandlerRootView.java:19) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3085) at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2770) at com.android.internal.policy.DecorView.superDispatchTouchEvent (DecorView.java:472) at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent (PhoneWindow.java:1878) at android.app.Activity.dispatchTouchEvent (Activity.java:4006) at androidx.appcompat.view.WindowCallbackWrapper.dispatchTouchEvent (WindowCallbackWrapper.java:2) at com.android.internal.policy.DecorView.dispatchTouchEvent (DecorView.java:430) at android.view.View.dispatchPointerEvent (View.java:13758) at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent (ViewRootImpl.java:5837) at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess (ViewRootImpl.java:5620) at android.view.ViewRootImpl$InputStage.deliver (ViewRootImpl.java:5116) at android.view.ViewRootImpl$InputStage.onDeliverToNext (ViewRootImpl.java:5169) at android.view.ViewRootImpl$InputStage.forward (ViewRootImpl.java:5135) at android.view.ViewRootImpl$AsyncInputStage.forward (ViewRootImpl.java:5275) at android.view.ViewRootImpl$InputStage.apply (ViewRootImpl.java:5143) at android.view.ViewRootImpl$AsyncInputStage.apply (ViewRootImpl.java:5332) at android.view.ViewRootImpl$InputStage.deliver (ViewRootImpl.java:5116) at android.view.ViewRootImpl$InputStage.onDeliverToNext (ViewRootImpl.java:5169) at android.view.ViewRootImpl$InputStage.forward (ViewRootImpl.java:5135) at android.view.ViewRootImpl$InputStage.apply (ViewRootImpl.java:5143) at android.view.ViewRootImpl$InputStage.deliver (ViewRootImpl.java:5116) at android.view.ViewRootImpl.deliverInputEvent (ViewRootImpl.java:7895) at android.view.ViewRootImpl.doProcessInputEvents (ViewRootImpl.java:7864) at android.view.ViewRootImpl.enqueueInputEvent (ViewRootImpl.java:7804) at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent (ViewRootImpl.java:8020) at android.view.InputEventReceiver.dispatchInputEvent (InputEventReceiver.java:189) at android.os.MessageQueue.nativePollOnce (MessageQueue.java) at android.os.MessageQueue.next (MessageQueue.java:336) at android.os.Looper.loop (Looper.java:174) at android.app.ActivityThread.main (ActivityThread.java:7682) at java.lang.reflect.Method.invoke (Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:516) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:950)

It would be very helpful if you could just help me with the cause of this issue as I am also clueless about why this is happening.

I am also fine if you can suggest some code change to me that will not update the slider in that case, but I do not want the app to crash in any case.

I hope you will be able to help me out.

Thanks in advance.

viranianish commented 3 years ago

I was able to regenerate the issue on my end now.

I have multiple sliders on the same page and this happens when the user tries to tap on multiple sliders or on the same slider with multiple fingers at once.

I think that's why it's not getting the touch param in some case and the app crashes.

It seems that the users are just playing with the app anyhow.

Can we do something about it in the plugin's code so we can check the param first and then run the function so that we don't have that exception?

githuboftigran commented 3 years ago

@viranianish , thank you for exposing this issue and sorry for delayed response. I will have a look in a couple of days.

viranianish commented 3 years ago

Thanks @githuboftigran . Appreciate it.

githuboftigran commented 3 years ago

@viranianish , fixed the problem in 1.3.3

viranianish commented 3 years ago

Thanks @githuboftigran . Seems to be working properly on my side. I am updating my app to play store today.

Thanks again. :)