Hello, I really like your library, but sometimes it has crash on production. Can you help me please?
Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean com.swmansion.gesturehandler.GestureHandler.wantEvents()' on a null object reference
at com.swmansion.gesturehandler.GestureHandlerOrchestrator.deliverEventToGestureHandler(GestureHandlerOrchestrator.java:293)
at com.swmansion.gesturehandler.GestureHandlerOrchestrator.deliverEventToGestureHandlers(GestureHandlerOrchestrator.java:262)
at com.swmansion.gesturehandler.GestureHandlerOrchestrator.onTouchEvent(GestureHandlerOrchestrator.java:102)
at com.swmansion.gesturehandler.react.RNGestureHandlerRootHelper.dispatchTouchEvent(RNGestureHandlerRootHelper.java:121)
at com.swmansion.gesturehandler.react.RNGestureHandlerRootView.dispatchTouchEvent(RNGestureHandlerRootView.java:36)
@VasilenkoVladislav can you create a repo with Minimal, Complete, and Verifiable example, where your issue can easily be reproduced, please?
I think this issue has been resolved in new release. If not, please let me now.
Hello, I had the same crash in production with the new release
NullPointerException - Attempt to invoke virtual method 'android.view.View com.swmansion.gesturehandler.GestureHandler.getView()' on a null object reference
com.swmansion.gesturehandler.GestureHandlerOrchestrator in deliverEventToGestureHandler at line 279
com.swmansion.gesturehandler.GestureHandlerOrchestrator in deliverEventToGestureHandlers at line 259
com.swmansion.gesturehandler.GestureHandlerOrchestrator in onTouchEvent at line 101
com.swmansion.gesturehandler.react.RNGestureHandlerRootHelper in dispatchTouchEvent at line 121
com.swmansion.gesturehandler.react.RNGestureHandlerEnabledRootView in dispatchTouchEvent at line 31
android.view.ViewGroup in dispatchTransformedTouchEvent at line 2677
I'm getting the same crash in production. I'm using version 1.3.0
(react-native 0.59.10)
Has this issue been resolved?
My app crashes in the release version but runs perfectly on an emulator.
Not resolved. Running latest version of gesture handler and react native. Yet, it still breaks.
Hello, I had the same crash in production with the new release
Description
NullPointerException - Attempt to invoke virtual method 'android.view.View com.swmansion.gesturehandler.GestureHandler.getView()' on a null object reference
com.swmansion.gesturehandler.GestureHandlerOrchestrator in deliverEventToGestureHandler at line 279
com.swmansion.gesturehandler.GestureHandlerOrchestrator in deliverEventToGestureHandlers at line 259
com.swmansion.gesturehandler.GestureHandlerOrchestrator in onTouchEvent at line 101
com.swmansion.gesturehandler.react.RNGestureHandlerRootHelper in dispatchTouchEvent at line 121
com.swmansion.gesturehandler.react.RNGestureHandlerEnabledRootView in dispatchTouchEvent at line 31
android.view.ViewGroup in dispatchTransformedTouchEvent at line 2677Environment
- RNGH: 1.1.0
- RN: 0.57.8
- Plateform: Android
- Device info: Elite 4T, Android 7.0
I solved this problem using patch-package.
private void deliverEventToGestureHandler(GestureHandler handler, MotionEvent event) {
+ if (handler == null) {
+ return;
+ }
if (!isViewAttachedUnderWrapper(handler.getView())) {
handler.cancel();
return;
@kmagiera @osdnk Is this path include in the new version? I got the same error with the latest version!
@osdnk I have same issue with react-native-gesture-handler 1.6.0 and react-native 0.61.5
Fatal Exception: java.lang.NullPointerException: Attempt to read from field 'boolean com.swmansion.gesturehandler.GestureHandler.mIsActive' on a null object reference
at com.swmansion.gesturehandler.GestureHandlerOrchestrator$1.compare(GestureHandlerOrchestrator.java:33)
at com.swmansion.gesturehandler.GestureHandlerOrchestrator$1.compare(GestureHandlerOrchestrator.java:30)
at java.util.TimSort.countRunAndMakeAscending(TimSort.java:355)
at java.util.TimSort.sort(TimSort.java:220)
at java.util.Arrays.sort(Arrays.java:1498)
at com.swmansion.gesturehandler.GestureHandlerOrchestrator.deliverEventToGestureHandlers(GestureHandlerOrchestrator.java:257)
at com.swmansion.gesturehandler.GestureHandlerOrchestrator.onTouchEvent(GestureHandlerOrchestrator.java:101)
at com.swmansion.gesturehandler.react.RNGestureHandlerRootHelper.dispatchTouchEvent(RNGestureHandlerRootHelper.java:126)
at com.swmansion.gesturehandler.react.RNGestureHandlerEnabledRootView.dispatchTouchEvent(RNGestureHandlerEnabledRootView.java:36)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3159)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2844)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3159)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2844)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3159)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2844)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3159)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2844)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3159)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2844)
at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:601)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1871)
at android.app.Activity.dispatchTouchEvent(Activity.java:3384)
at androidx.appcompat.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:69)
at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:563)
at android.view.View.dispatchPointerEvent(View.java:12791)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5668)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:5463)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4956)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:5009)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4975)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:5112)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4983)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:5169)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4956)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:5009)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4975)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4983)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4956)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7734)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7674)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7635)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:7845)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:197)
at android.view.InputEventReceiver.nativeConsumeBatchedInputEvents(InputEventReceiver.java)
at android.view.InputEventReceiver.consumeBatchedInputEvents(InputEventReceiver.java:186)
at android.view.ViewRootImpl.doConsumeBatchedInput(ViewRootImpl.java:7808)
at android.view.ViewRootImpl$ConsumeBatchedInputRunnable.run(ViewRootImpl.java:7872)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:911)
at android.view.Choreographer.doCallbacks(Choreographer.java:723)
at android.view.Choreographer.doFrame(Choreographer.java:652)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:897)
at android.os.Handler.handleCallback(Handler.java:789)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6944)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
Hey @EugeneDraitsev – judging by the stacktrace it seem to be a different issue. Mind making a small reproducable demo of the crash and opening a new issue for it?
@kmagiera that would be great!
Most helpful comment
@osdnk I have same issue with react-native-gesture-handler 1.6.0 and react-native 0.61.5