react-native-pager-view icon indicating copy to clipboard operation
react-native-pager-view copied to clipboard

app crashing in react native version 0.75.4 with new architecture

Open sankar-gp opened this issue 1 year ago • 7 comments

React Native App crashing

FATAL EXCEPTION: main Process: com.test.app, PID: 11360 java.lang.IllegalArgumentException: Scrapped or attached views may not be recycled. isScrap:false isAttached:true androidx.viewpager2.widget.ViewPager2$RecyclerViewImpl{1b4b462 VFED..... ......ID 0,0-975,1964 #2}, adapter:com.reactnativepagerview.ViewPagerAdapter@eb2d9f3, layout:androidx.viewpager2.widget.ViewPager2$LinearLayoutManagerImpl@58106b0, context:com.facebook.react.uimanager.ThemedReactContext@f0c1813 at androidx.recyclerview.widget.RecyclerView$Recycler.recycleViewHolderInternal(RecyclerView.java:6433) at androidx.recyclerview.widget.RecyclerView.removeAnimatingView(RecyclerView.java:1456) at androidx.recyclerview.widget.RecyclerView$ItemAnimatorRestoreListener.onAnimationFinished(RecyclerView.java:12699) at androidx.recyclerview.widget.RecyclerView$ItemAnimator.dispatchAnimationFinished(RecyclerView.java:13199) at androidx.recyclerview.widget.SimpleItemAnimator.dispatchRemoveFinished(SimpleItemAnimator.java:277) at androidx.recyclerview.widget.DefaultItemAnimator$4.onAnimationEnd(DefaultItemAnimator.java:213) at android.view.ViewPropertyAnimator$AnimatorEventListener.onAnimationEnd(ViewPropertyAnimator.java:1115) at android.animation.Animator$AnimatorListener.onAnimationEnd(Animator.java:708) at android.animation.Animator$AnimatorCaller$$ExternalSyntheticLambda1.call(D8$$SyntheticClass:0) at android.animation.Animator.callOnList(Animator.java:666) at android.animation.Animator.notifyListeners(Animator.java:609) at android.animation.Animator.notifyEndListeners(Animator.java:634) at android.animation.ValueAnimator.endAnimation(ValueAnimator.java:1306) at android.animation.ValueAnimator.doAnimationFrame(ValueAnimator.java:1566) at android.animation.AnimationHandler.doAnimationFrame(AnimationHandler.java:344) at android.animation.AnimationHandler.-$$Nest$mdoAnimationFrame(Unknown Source:0) at android.animation.AnimationHandler$1.doFrame(AnimationHandler.java:87) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1404) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1415) at android.view.Choreographer.doCallbacks(Choreographer.java:1015) at android.view.Choreographer.doFrame(Choreographer.java:941) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1389) at android.os.Handler.handleCallback(Handler.java:959) at android.os.Handler.dispatchMessage(Handler.java:100) at android.os.Looper.loopOnce(Looper.java:232) at android.os.Looper.loop(Looper.java:317) at android.app.ActivityThread.main(ActivityThread.java:8705) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:580) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:886)

"react-native": "0.75.4", "react-native-pager-view": "^6.4.1",

sankar-gp avatar Oct 03 '24 04:10 sankar-gp

Same issue here.

"react-native": "0.75.3", "react-native-pager-view": "6.4.0",

emifairais avatar Oct 04 '24 07:10 emifairais

Same here. Please help! 🙏 "react-native": "0.75.3", "react-native-pager-view": "6.4.0",

RaduPaun avatar Oct 04 '24 08:10 RaduPaun

I am getting the same error

avega99 avatar Oct 09 '24 02:10 avega99

I had the same issue with Execution failed for task ':react-native-pager-view:compileDebugKotlin'. I downgraded to pager view 6.3.0, it didn't fix it. When I finally downgraded my react-native version from 0.75.4 to 0.75.2 .

That fixed it for me

raphaelobinna avatar Oct 11 '24 05:10 raphaelobinna

Where are you folks getting this error?

Try https://github.com/software-mansion/react-native-screens/commit/b67af8628725a9c112adcf79b0387e523bd191a6.

It fixed navigating with navigation.navigate() for me on new arch and 0.75.4, but this error occurs when I try to navigation.replace()

shovel-kun avatar Oct 15 '24 00:10 shovel-kun

  • 1

LinhLM23496 avatar Oct 17 '24 10:10 LinhLM23496

In my case, the error was resolved with the following environment:

// android/app/build.gradle
dependencies {
    // other dependencies
    implementation 'androidx.viewpager2:viewpager2:1.1.0'
    implementation 'androidx.recyclerview:recyclerview:1.3.2'
}

"react-native": "^0.75.4", "react-native-pager-view": "^6.4.1", "react-native-screens": "^4.0.0-beta.14" (I tested with this version)

kmy-n avatar Oct 23 '24 12:10 kmy-n

Just upgraded react-native to 0.75.4 in the example app, everything is working fine. Closing issue https://github.com/callstack/react-native-pager-view/pull/901

MrRefactor avatar Nov 06 '24 07:11 MrRefactor

Getting this issue with [email protected]. I have a PagerView in a Stack.Screen, which may be causing the issue. This doesn't happen using the old arch.

    "@react-navigation/native": "7.0.0-rc.21",
    "@react-navigation/native-stack": "7.0.0-rc.30",
    "expo": "~52.0.0-preview.19",
    "react": "18.3.1",
    "react-dom": "18.3.1",
    "react-native": "0.76.1",
    "react-native-pager-view": "^6.4.1",
    "react-native-screens": "4.0.0-beta.17",
ERROR  Your app just crashed. See the error below.
java.lang.IllegalArgumentException: Scrapped or attached views may not be recycled. isScrap:false isAttached:true androidx.viewpager2.widget.ViewPager2$RecyclerViewImpl{9e6e20d VFED..... ......ID 0,0-1124,1426 #2}, adapter:com.reactnativepagerview.ViewPagerAdapter@33c65c2, layout:androidx.viewpager2.widget.ViewPager2$LinearLayoutManagerImpl@dc49fd3, context:com.facebook.react.uimanager.ThemedReactContext@c5c0835
  androidx.recyclerview.widget.RecyclerView$Recycler.recycleViewHolderInternal(RecyclerView.java:6433)
  androidx.recyclerview.widget.RecyclerView$Recycler.quickRecycleScrapView(RecyclerView.java:6554)
  androidx.recyclerview.widget.RecyclerView$LayoutManager.removeAndRecycleScrapInt(RecyclerView.java:9249)
  androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep3(RecyclerView.java:4207)
  androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3862)
  androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4404)
  android.view.View.layout(View.java:24421)
  android.view.ViewGroup.layout(ViewGroup.java:6440)
  androidx.viewpager2.widget.ViewPager2.onLayout(ViewPager2.java:527)
  android.view.View.layout(View.java:24421)
  android.view.ViewGroup.layout(ViewGroup.java:6440)
  com.reactnativepagerview.PagerViewViewManagerImpl.refreshViewChildrenLayout$lambda$2(PagerViewViewManagerImpl.kt:157)
  com.reactnativepagerview.PagerViewViewManagerImpl.$r8$lambda$GQgd023cnWEAb4sL7PYFpO-lrvQ(Unknown Source:0)
  com.reactnativepagerview.PagerViewViewManagerImpl$$ExternalSyntheticLambda1.run(D8$$SyntheticClass:0)
  android.os.Handler.handleCallback(Handler.java:958)
  android.os.Handler.dispatchMessage(Handler.java:99)
  android.os.Looper.loopOnce(Looper.java:205)
  android.os.Looper.loop(Looper.java:294)
  android.app.ActivityThread.main(ActivityThread.java:8177)
  java.lang.reflect.Method.invoke(Native Method)
  com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552)
  com.android.internal.os.ZygoteInit.main(ZygoteInit.java:971)

richardbutler avatar Nov 06 '24 09:11 richardbutler

Just tried this with v6.5.0 and the issue persists.

richardbutler avatar Nov 06 '24 12:11 richardbutler

There are issues with using react-screens native stack

renyufei8023 avatar Nov 13 '24 03:11 renyufei8023

+1, crash in change from PageViewer (that in Stack.Screen) in Nested Stack.Screen

"@react-navigation/bottom-tabs": "^6.6.1",
"@react-navigation/material-top-tabs": "^6.6.14",
"@react-navigation/native": "^6.0.8",
"@react-navigation/native-stack": "^6.11.0",
"react": "18.3.1",
"react-native": "^0.76.1",

Melekhin avatar Nov 18 '24 18:11 Melekhin

Please provide a reproduction repo.

MrRefactor avatar Nov 19 '24 18:11 MrRefactor

(NOBRIDGE) ERROR Error: Exception in HostFunction: java.lang.IllegalStateException: ViewPager2 does not support direct child views

"react-native": "0.76.2", "react-native-screens": "4.2.0", "@react-navigation/native": "7.0.3",

newArch enabled

looks like it's related to https://github.com/software-mansion/react-native-screens/issues/2529

abraaoz avatar Nov 21 '24 02:11 abraaoz

this is an error from core/react-native-screens, for now please use patch as in this PR: https://github.com/software-mansion/react-native-screens/pull/2527, until https://github.com/facebook/react-native/pull/47634 will be merged into core

MrRefactor avatar Nov 21 '24 04:11 MrRefactor

Issue fixed in callstack/react-native-pager-view v6.5.1, Now i'm not observing the crash

https://github.com/callstack/react-native-pager-view/releases/tag/v6.5.1

sankar-gp avatar Nov 21 '24 07:11 sankar-gp

(NOBRIDGE) ERROR Error: Exception in HostFunction: java.lang.IllegalStateException: ViewPager2 does not support direct child views

"react-native": "0.76.2", "react-native-screens": "4.2.0", "@react-navigation/native": "7.0.3",

newArch enabled

looks like it's related to software-mansion/react-native-screens#2529

I'm getting the same error. How did you solve it?

Umar-Farooq-Shafi avatar Mar 19 '25 15:03 Umar-Farooq-Shafi

@Umar-Farooq-Shafi , you have two options:

  1. Apply this patch using https://www.npmjs.com/package/patch-package

react-native-screens+4.2.0.patch

OR

  1. Upgrade react-native-screens to 4.3.0 or newer.

abraaoz avatar Mar 27 '25 13:03 abraaoz