React-native-slider: Crashes on Android 6.0 (sometimes)

Created on 9 Nov 2019  路  4Comments  路  Source: callstack/react-native-slider

Environment

React-Native version: 0.61.4
Slider version: 2.0.3

Description

I have some crash reports on Google Play Console only for Android 6.0

java.lang.NullPointerException:
at android.animation.AnimatorSet.clone (AnimatorSet.java:700)
at android.animation.AnimatorSet.clone (AnimatorSet.java:51)
at android.animation.Animator$AnimatorConstantState.newInstance (Animator.java:562)
at android.animation.Animator$AnimatorConstantState.newInstance (Animator.java:543)
at android.content.res.ConstantState.newInstance (ConstantState.java:51)
at android.content.res.ConstantState.newInstance (ConstantState.java:59)
at android.content.res.ConfigurationBoundResourceCache.getInstance (ConfigurationBoundResourceCache.java:48)
at android.animation.AnimatorInflater.loadAnimator (AnimatorInflater.java:111)
at android.graphics.drawable.AnimatedVectorDrawable$AnimatedVectorDrawableState$PendingAnimator.newInstance (AnimatedVectorDrawable.java:567)
at android.graphics.drawable.AnimatedVectorDrawable$AnimatedVectorDrawableState.inflatePendingAnimators (AnimatedVectorDrawable.java:545)
at android.graphics.drawable.AnimatedVectorDrawable.applyTheme (AnimatedVectorDrawable.java:377)
at android.graphics.drawable.DrawableContainer$DrawableContainerState.applyTheme (DrawableContainer.java:865)
at android.graphics.drawable.DrawableContainer.applyTheme (DrawableContainer.java:577)
at android.graphics.drawable.StateListDrawable.applyTheme (StateListDrawable.java:370)
at android.graphics.drawable.AnimatedStateListDrawable.applyTheme (AnimatedStateListDrawable.java:391)
at android.content.res.Resources.loadDrawable (Resources.java:4165)
at android.content.res.Resources.loadDrawable (Resources.java:4006)
at android.content.res.TypedArray.getDrawable (TypedArray.java:886)
at android.widget.AbsSeekBar. (AbsSeekBar.java:194)
at android.widget.SeekBar. (SeekBar.java:85)
at android.widget.SeekBar. (SeekBar.java:81)
at androidx.appcompat.widget.AppCompatSeekBar. (AppCompatSeekBar.java:47)
at com.reactnativecommunity.slider.ReactSlider. (ReactSlider.java:64)
at com.reactnativecommunity.slider.ReactSliderManager$ReactSliderShadowNode.measure (ReactSliderManager.java:68)

at com.facebook.yoga.YogaNodeJNIBase.measure (YogaNodeJNIBase.java:474)
at com.facebook.yoga.YogaNative.jni_YGNodeCalculateLayout (Native Method)
at com.facebook.yoga.YogaNodeJNIBase.calculateLayout (YogaNodeJNIBase.java:182)
at com.facebook.react.uimanager.ReactShadowNodeImpl.calculateLayout (ReactShadowNodeImpl.java:463)
at com.facebook.react.uimanager.UIImplementation.calculateRootLayout (UIImplementation.java:883)
at com.facebook.react.uimanager.UIImplementation.updateViewHierarchy (UIImplementation.java:638)
at com.facebook.react.uimanager.UIImplementation.dispatchViewUpdates (UIImplementation.java:599)
at com.facebook.react.uimanager.UIManagerModule.onBatchComplete (UIManagerModule.java:782)
at com.facebook.react.bridge.NativeModuleRegistry.onBatchComplete (NativeModuleRegistry.java:118)
at com.facebook.react.bridge.CatalystInstanceImpl$BridgeCallback.onBatchComplete (CatalystInstanceImpl.java:164)
at com.facebook.react.bridge.queue.NativeRunnable.run (Native Method)
at android.os.Handler.handleCallback (Handler.java:739)
at android.os.Handler.dispatchMessage (Handler.java:95)
at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage (MessageQueueThreadHandler.java:26)
at android.os.Looper.loop (Looper.java:148)
at com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.run (MessageQueueThreadImpl.java:225)
at java.lang.Thread.run (Thread.java:818)

And there is another

java.lang.NullPointerException:
at android.animation.AnimatorSet.clone (AnimatorSet.java:690)
at android.animation.AnimatorSet.clone (AnimatorSet.java:51)
at android.animation.Animator$AnimatorConstantState.newInstance (Animator.java:562)
at android.animation.Animator$AnimatorConstantState.newInstance (Animator.java:543)
at android.content.res.ConstantState.newInstance (ConstantState.java:51)
at android.content.res.ConstantState.newInstance (ConstantState.java:59)
at android.content.res.ConfigurationBoundResourceCache.getInstance (ConfigurationBoundResourceCache.java:48)
at android.animation.AnimatorInflater.loadAnimator (AnimatorInflater.java:111)
at android.graphics.drawable.AnimatedVectorDrawable$AnimatedVectorDrawableState$PendingAnimator.newInstance (AnimatedVectorDrawable.java:567)
at android.graphics.drawable.AnimatedVectorDrawable$AnimatedVectorDrawableState.inflatePendingAnimators (AnimatedVectorDrawable.java:545)
at android.graphics.drawable.AnimatedVectorDrawable.applyTheme (AnimatedVectorDrawable.java:377)
at android.graphics.drawable.DrawableContainer$DrawableContainerState.applyTheme (DrawableContainer.java:865)
at android.graphics.drawable.DrawableContainer.applyTheme (DrawableContainer.java:577)
at android.graphics.drawable.StateListDrawable.applyTheme (StateListDrawable.java:370)
at android.graphics.drawable.AnimatedStateListDrawable.applyTheme (AnimatedStateListDrawable.java:391)
at android.content.res.Resources.loadDrawable (Resources.java:4164)
at android.content.res.Resources.loadDrawable (Resources.java:4000)
at android.content.res.TypedArray.getDrawable (TypedArray.java:886)
at android.widget.AbsSeekBar. (AbsSeekBar.java:193)
at android.widget.SeekBar. (SeekBar.java:85)
at android.widget.SeekBar. (SeekBar.java:81)
at androidx.appcompat.widget.AppCompatSeekBar. (AppCompatSeekBar.java:47)
at com.reactnativecommunity.slider.ReactSlider. (ReactSlider.java:64)
at com.reactnativecommunity.slider.ReactSliderManager.createViewInstance (ReactSliderManager.java:130)
at com.reactnativecommunity.slider.ReactSliderManager.createViewInstance (ReactSliderManager.java:39)

at com.facebook.react.uimanager.ViewManager.createViewInstance (ViewManager.java:139)
at com.facebook.react.uimanager.ViewManager.createView (ViewManager.java:82)
at com.facebook.react.uimanager.NativeViewHierarchyManager.createView (NativeViewHierarchyManager.java:269)
at com.facebook.react.uimanager.UIViewOperationQueue$CreateViewOperation.execute (UIViewOperationQueue.java:179)
at com.facebook.react.uimanager.UIViewOperationQueue$DispatchUIFrameCallback.dispatchPendingNonBatchedOperations (UIViewOperationQueue.java:972)
at com.facebook.react.uimanager.UIViewOperationQueue$DispatchUIFrameCallback.doFrameGuarded (UIViewOperationQueue.java:943)
at com.facebook.react.uimanager.GuardedFrameCallback.doFrame (GuardedFrameCallback.java:28)
at com.facebook.react.modules.core.ReactChoreographer$ReactChoreographerDispatcher.doFrame (ReactChoreographer.java:174)
at com.facebook.react.modules.core.ChoreographerCompat$FrameCallback$1.doFrame (ChoreographerCompat.java:84)
at android.view.Choreographer$CallbackRecord.run (Choreographer.java:909)
at android.view.Choreographer.doCallbacks (Choreographer.java:686)
at android.view.Choreographer.doFrame (Choreographer.java:619)
at android.view.Choreographer$FrameDisplayEventReceiver.run (Choreographer.java:897)
at android.os.Handler.handleCallback (Handler.java:739)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:148)
at android.app.ActivityThread.main (ActivityThread.java:7325)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1120)

Reproducible Demo

bug report

Most helpful comment

Any updates on this issue? I'm having the same problem,

Fatal Exception: java.lang.NullPointerException
Attempt to write to field 'java.util.ArrayList android.animation.AnimatorSet$Node.nodeDependents' on a null object reference
com.reactnativecommunity.slider.ReactSlider.<init>

Only happens on Android 6 and 7.

All 4 comments

Hello @javadi69!
Do you have any repro steps?

@wojteg1337
I'm using slider in video player and try to hide and display it over time or user press.
I personally never seen such crashes but there are some reports on Google Play Console.
These crashes seen only on Android 6 and Android 7
These are my functions to animate it:

showControls = () => {
    this.setState({ hideControls: false }, () => {
      Animated.parallel([
        Animated.timing(this.animControls, { toValue: 1, duration: 100, useNativeDriver: true })
      ]).start();
    });
  }
hideControls = () => {
    Animated.parallel([
      Animated.timing(this.animControls, { toValue: 0, duration: 200, useNativeDriver: true })
    ]).start(() => this.setState({ hideControls: true }));
  }

this.animControls is opacity of slider's parent
and when hideControls is true we don't render slider

Any updates on this issue? I'm having the same problem,

Fatal Exception: java.lang.NullPointerException
Attempt to write to field 'java.util.ArrayList android.animation.AnimatorSet$Node.nodeDependents' on a null object reference
com.reactnativecommunity.slider.ReactSlider.<init>

Only happens on Android 6 and 7.

I have the same issue with slider version 2.0.9 in android 7

Was this page helpful?
0 / 5 - 0 ratings