Crash on latest React Native

Đang mở
#4,809 8 bình luận 8 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 3 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
35/100
Loại issue
Lỗi
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
react-native, typescript
Lĩnh vực
mobile

Hướng nghiên cứu

Bắt đầu bằng cách tái hiện trường hợp Portal và LoadingIndicator đã được báo cáo trên Android với React Native 0.81.4, Expo 54.0.8 và react-native-paper 5.15.5 trên Pixel 7 hoặc thiết bị tương đương. Theo dõi các điểm vào của Portal và LoadingIndicator cũng như các cập nhật view của Android; hoàn tất khi crash EdgeToEdgeReactViewGroup null-child xảy ra không liên tục đó không còn xuất hiện.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

bug

It's uneasy to reproduce and best I have so far is noticing that this component occasionally crashes the app on Android.

<Portal>
  <LoadingIndicator />
</Portal>

The crash:

Process: com.snapdone, PID: 14949
java.lang.IllegalStateException: EdgeToEdgeReactViewGroup contains null child at index 1 when traversal in dispatchGetDisplayList, the view may have been removed.
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4524)
at android.view.View.updateDisplayListIfDirty(View.java:24084)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4556)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4529)
at android.view.View.updateDisplayListIfDirty(View.java:24084)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4556)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4529)
at android.view.View.updateDisplayListIfDirty(View.java:24084)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4556)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4529)
at android.view.View.updateDisplayListIfDirty(View.java:24084)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4556)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4529)
at android.view.View.updateDisplayListIfDirty(View.java:24084)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4556)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4529)
at android.view.View.updateDisplayListIfDirty(View.java:24084)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4556)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4529)
at android.view.View.updateDisplayListIfDirty(View.java:24084)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4556)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4529)
at android.view.View.updateDisplayListIfDirty(View.java:24084)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4556)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4529)
at android.view.View.updateDisplayListIfDirty(View.java:24084)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4556)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4529)
at android.view.View.updateDisplayListIfDirty(View.java:24084)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4556)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4529)
at android.view.View.updateDisplayListIfDirty(View.java:24084)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4556)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4529)
at android.view.View.updateDisplayListIfDirty(View.java:24084)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4556)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4529)
at android.view.View.updateDisplayListIfDirty(View.java:24084)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:694)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:700)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:798)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:5839)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:5490)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:4474)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:3071)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:10659)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1570)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1579)
at android.view.Choreographer.doCallbacks(Choreographer.java:1179)
at android.view.Choreographer.doFrame(Choreographer.java:1108)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1553)
at android.os.Handler.handleCallback(Handler.java:1041)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.dispatchMessage(Looper.java:315)
at android.os.Looper.loopOnce(Looper.java:251)
2025-09-17 16:52:49.272 14949-14949 AndroidRuntime          com.snapdone                         E  	at android.os.Looper.loop(Looper.java:349) (Ask Gemini)
at android.app.ActivityThread.main(ActivityThread.java:9041)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:593)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:929)

Deps:

  • "react-native": "0.81.4"
  • "expo": "54.0.8"
  • "react-native-paper": "5.15.5"

Device:

  • Google Pixel 7
Ngôn ngữ chính
TypeScript
Star
14.5k
Fork
2.3k
Merge trung bình
8 ngày 7 giờ
Pull request đã merge (30 ngày)
5

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của callstack/react-native-paper

Tất cả issue của callstack/react-native-paper

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.