Status Update
Comments
kf...@gmail.com <kf...@gmail.com> #2
Seems somewhat related to the accessibility requiring some sizes from the Layout node, over to Alex to triage properly.
In the meantime, ivanmitsura, could you provide a reproduction sample? Thanks would help us make it more actionable. Thanks
da...@gmail.com <da...@gmail.com> #3
vi...@google.com <vi...@google.com>
vi...@google.com <vi...@google.com> #4
To assignee:
The code path starts from root and goes down the tree to children. By the time some child is checked, its ancestor (which was attached at the time the child was found) is already detached, causing this crash. Though I'm not sure how or why it happens.
To reporter:
I have a Samsung galaxy s6 devices, and I tested our demo app. But I didn't observe a crash.
Unfortunately, it's hard to do anything about this issue without a repro. If you happen to narrow down your code to repro sample, please add it here.
of...@gmail.com <of...@gmail.com> #5
Could not reproduce it though.
Fatal Exception: java.lang.RuntimeException: Unable to destroy activity {u.x.i/m.b.v.n}: java.lang.IllegalStateException: LayoutCoordinate operations are only valid when isAttached is true
at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:4605)
at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:4623)
at android.app.ActivityThread.-wrap5(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1757)
at android.os.Handler.dispatchMessage(Handler.java:105)
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)
Caused by java.lang.IllegalStateException: LayoutCoordinate operations are only valid when isAttached is true
at androidx.compose.ui.node.LayoutNodeWrapper.getParentLayoutCoordinates(LayoutNodeWrapper.java:23)
at androidx.compose.ui.layout.LayoutCoordinatesKt.findRoot(LayoutCoordinatesKt.java:5)
at androidx.compose.ui.layout.LayoutCoordinatesKt.boundsInRoot(LayoutCoordinatesKt.java:5)
at androidx.compose.ui.semantics.SemanticsWrapper.touchBoundsInRoot(SemanticsWrapper.java:19)
at androidx.compose.ui.semantics.SemanticsNode.getTouchBoundsInRoot(SemanticsNode.java:4)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat_androidKt.getAllUncoveredSemanticsNodesToMap$findAllSemanticNodesRecursive(AndroidComposeViewAccessibilityDelegateCompat_androidKt.java:33)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat_androidKt.getAllUncoveredSemanticsNodesToMap$findAllSemanticNodesRecursive(AndroidComposeViewAccessibilityDelegateCompat_androidKt.java:115)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat_androidKt.getAllUncoveredSemanticsNodesToMap(AndroidComposeViewAccessibilityDelegateCompat_androidKt.java:41)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat.getCurrentSemanticsNodes(AndroidComposeViewAccessibilityDelegateCompat.java:10)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat.createNodeInfo(AndroidComposeViewAccessibilityDelegateCompat.java:9)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat.access$createNodeInfo(AndroidComposeViewAccessibilityDelegateCompat.java)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat$MyNodeProvider.createAccessibilityNodeInfo(AndroidComposeViewAccessibilityDelegateCompat.java:2)
at android.view.View.createAccessibilityNodeInfoInternal(View.java:7927)
at android.view.View$AccessibilityDelegate.createAccessibilityNodeInfo(View.java:27518)
at android.view.View.createAccessibilityNodeInfo(View.java:7913)
at android.view.accessibility.AccessibilityRecord.setSource(AccessibilityRecord.java:146)
at android.view.accessibility.AccessibilityRecord.setSource(AccessibilityRecord.java:119)
at android.view.View.onInitializeAccessibilityEventInternal(View.java:7867)
at android.view.View$AccessibilityDelegate.onInitializeAccessibilityEvent(View.java:27401)
at androidx.core.view.AccessibilityDelegateCompat.onInitializeAccessibilityEvent(AccessibilityDelegateCompat.java:2)
at androidx.core.view.AccessibilityDelegateCompat$AccessibilityDelegateAdapter.onInitializeAccessibilityEvent(AccessibilityDelegateCompat.java:2)
at android.view.View.onInitializeAccessibilityEvent(View.java:7853)
at android.view.View.sendAccessibilityEventUncheckedInternal(View.java:7717)
at android.view.View$AccessibilityDelegate.sendAccessibilityEventUnchecked(View.java:27340)
at androidx.core.view.AccessibilityDelegateCompat.sendAccessibilityEventUnchecked(AccessibilityDelegateCompat.java:2)
at androidx.core.view.AccessibilityDelegateCompat$AccessibilityDelegateAdapter.sendAccessibilityEventUnchecked(AccessibilityDelegateCompat.java:2)
at android.view.View.sendAccessibilityEventUnchecked(View.java:7700)
at android.view.ViewRootImpl$SendWindowContentChangedAccessibilityEvent.run(ViewRootImpl.java:9443)
at android.view.ViewRootImpl$SendWindowContentChangedAccessibilityEvent.runOrPost(ViewRootImpl.java:9469)
at android.view.ViewRootImpl.postSendWindowContentChangedCallback(ViewRootImpl.java:8395)
at android.view.ViewRootImpl.notifySubtreeAccessibilityStateChanged(ViewRootImpl.java:8570)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3776)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3776)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3776)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3776)
at android.view.View.notifySubtreeAccessibilityStateChangedIfNeeded(View.java:11910)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChangedIfNeeded(ViewGroup.java:3800)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChangedIfNeeded(ViewGroup.java:3796)
at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5456)
at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5403)
at android.view.ViewGroup.removeView(ViewGroup.java:5334)
at androidx.compose.ui.platform.AndroidComposeView.removeAndroidView(AndroidComposeView.java:9)
at androidx.compose.ui.viewinterop.AndroidViewHolder$layoutNode$1$4.invoke(AndroidViewHolder.java:19)
at androidx.compose.ui.viewinterop.AndroidViewHolder$layoutNode$1$4.invoke(AndroidViewHolder.java:2)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.java:56)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.java:122)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.java:122)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.java:122)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.java:122)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.java:122)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.java:122)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.java:122)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.java:122)
at androidx.compose.ui.node.LayoutNode.removeAll$ui_release(LayoutNode.java:32)
at androidx.compose.ui.node.UiApplier.onClear(UiApplier.java:6)
at androidx.compose.runtime.AbstractApplier.clear(AbstractApplier.java:10)
at androidx.compose.runtime.CompositionImpl.dispose(CompositionImpl.java:66)
at androidx.compose.ui.platform.WrappedComposition.dispose(WrappedComposition.java:29)
at androidx.compose.ui.platform.WrappedComposition.onStateChanged(WrappedComposition.java:14)
at androidx.lifecycle.LifecycleRegistry$ObserverWithState.dispatchEvent(LifecycleRegistry.java:14)
at androidx.lifecycle.LifecycleRegistry.backwardPass(LifecycleRegistry.java:71)
at androidx.lifecycle.LifecycleRegistry.sync(LifecycleRegistry.java:41)
at androidx.lifecycle.LifecycleRegistry.moveToState(LifecycleRegistry.java:19)
at androidx.lifecycle.LifecycleRegistry.handleLifecycleEvent(LifecycleRegistry.java:9)
at androidx.lifecycle.ReportFragment.dispatch(ReportFragment.java:30)
at androidx.lifecycle.ReportFragment.dispatch(ReportFragment.java:10)
at androidx.lifecycle.ReportFragment.onDestroy(ReportFragment.java:5)
at android.app.Fragment.performDestroy(Fragment.java:2870)
at android.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:1424)
at android.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManagerImpl.java:1549)
at android.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:1611)
at android.app.FragmentManagerImpl.dispatchMoveToState(FragmentManagerImpl.java:3045)
at android.app.FragmentManagerImpl.dispatchDestroy(FragmentManagerImpl.java:3025)
at android.app.FragmentController.dispatchDestroy(FragmentController.java:245)
at android.app.Activity.performDestroy(Activity.java:7478)
at android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1255)
at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:4592)
at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:4623)
at android.app.ActivityThread.-wrap5(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1757)
at android.os.Handler.dispatchMessage(Handler.java:105)
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)
do...@gmail.com <do...@gmail.com> #6
Caused by java.lang.IllegalStateException: LayoutCoordinate operations are only valid when isAttached is true
at androidx.compose.ui.node.LayoutNodeWrapper.getParentLayoutCoordinates(LayoutNodeWrapper.kt:168)
at androidx.compose.ui.layout.LayoutCoordinatesKt.findRoot(LayoutCoordinates.kt:158)
at androidx.compose.ui.semantics.SemanticsWrapper.touchBoundsInRoot(SemanticsWrapper.kt:88)
at androidx.compose.ui.semantics.SemanticsNode.getTouchBoundsInRoot(SemanticsNode.kt:93)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat_androidKt.getAllUncoveredSemanticsNodesToMap$findAllSemanticNodesRecursive(AndroidComposeViewAccessibilityDelegateCompat.android.kt:2518)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat_androidKt.getAllUncoveredSemanticsNodesToMap$findAllSemanticNodesRecursive(AndroidComposeViewAccessibilityDelegateCompat.android.kt:2533)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat_androidKt.getAllUncoveredSemanticsNodesToMap(AndroidComposeViewAccessibilityDelegateCompat.android.kt:2559)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat.getCurrentSemanticsNodes(AndroidComposeViewAccessibilityDelegateCompat.android.kt:228)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat.createNodeInfo(AndroidComposeViewAccessibilityDelegateCompat.android.kt:337)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat.access$sendScrollEventIfNeeded(AndroidComposeViewAccessibilityDelegateCompat.android.kt:113)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat$MyNodeProvider.createAccessibilityNodeInfo(AndroidComposeViewAccessibilityDelegateCompat.android.kt:2391)
at android.view.View.createAccessibilityNodeInfoInternal(View.java:7340)
at android.view.View$AccessibilityDelegate.createAccessibilityNodeInfo(View.java:26518)
at android.view.View.createAccessibilityNodeInfo(View.java:7326)
at android.view.accessibility.AccessibilityRecord.setSource(AccessibilityRecord.java:146)
at android.view.accessibility.AccessibilityRecord.setSource(AccessibilityRecord.java:119)
at android.view.View.onInitializeAccessibilityEventInternal(View.java:7280)
at android.view.View$AccessibilityDelegate.onInitializeAccessibilityEvent(View.java:26401)
at androidx.core.view.AccessibilityDelegateCompat.onInitializeAccessibilityEvent(AccessibilityDelegateCompat.java:257)
at androidx.core.view.AccessibilityDelegateCompat$AccessibilityDelegateAdapter.onInitializeAccessibilityEvent(AccessibilityDelegateCompat.java:76)
at android.view.View.onInitializeAccessibilityEvent(View.java:7266)
at android.view.View.sendAccessibilityEventUncheckedInternal(View.java:7130)
at android.view.View$AccessibilityDelegate.sendAccessibilityEventUnchecked(View.java:26340)
at androidx.core.view.AccessibilityDelegateCompat.sendAccessibilityEventUnchecked(AccessibilityDelegateCompat.java:196)
at androidx.core.view.AccessibilityDelegateCompat$AccessibilityDelegateAdapter.sendAccessibilityEventUnchecked(AccessibilityDelegateCompat.java:113)
at android.view.View.sendAccessibilityEventUnchecked(View.java:7113)
at android.view.ViewRootImpl$SendWindowContentChangedAccessibilityEvent.run(ViewRootImpl.java:9003)
at android.view.ViewRootImpl$SendWindowContentChangedAccessibilityEvent.runOrPost(ViewRootImpl.java:9029)
at android.view.ViewRootImpl.postSendWindowContentChangedCallback(ViewRootImpl.java:8071)
at android.view.ViewRootImpl.notifySubtreeAccessibilityStateChanged(ViewRootImpl.java:8246)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3736)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3736)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3736)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3736)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3736)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3736)
at android.view.View.notifySubtreeAccessibilityStateChangedIfNeeded(View.java:11270)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChangedIfNeeded(ViewGroup.java:3760)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChangedIfNeeded(ViewGroup.java:3756)
at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5459)
at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5400)
at android.view.ViewGroup.removeView(ViewGroup.java:5331)
at androidx.compose.ui.platform.AndroidComposeView.removeAndroidView(AndroidComposeView.android.kt:618)
at androidx.compose.ui.viewinterop.AndroidViewHolder$layoutNode$1$4.invoke(AndroidViewHolder.android.kt:276)
at androidx.compose.ui.viewinterop.AndroidViewHolder$layoutNode$1$4.invoke(AndroidViewHolder.android.kt:275)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:363)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:374)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:374)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:374)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:374)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:374)
at androidx.compose.ui.node.LayoutNode.removeAll$ui_release(LayoutNode.kt:269)
at androidx.compose.ui.node.UiApplier.onClear(UiApplier.android.kt:44)
at androidx.compose.runtime.AbstractApplier.clear(Applier.kt:210)
at androidx.compose.runtime.CompositionImpl.dispose(Composition.kt:495)
at androidx.compose.ui.platform.WrappedComposition.dispose(Wrapper.android.kt:171)
at androidx.compose.ui.platform.WrappedComposition.onStateChanged(Wrapper.android.kt:179)
at androidx.lifecycle.LifecycleRegistry$ObserverWithState.dispatchEvent(LifecycleRegistry.java:354)
at androidx.lifecycle.LifecycleRegistry.backwardPass(LifecycleRegistry.java:284)
at androidx.lifecycle.LifecycleRegistry.sync(LifecycleRegistry.java:302)
at androidx.lifecycle.LifecycleRegistry.moveToState(LifecycleRegistry.java:148)
at androidx.lifecycle.LifecycleRegistry.handleLifecycleEvent(LifecycleRegistry.java:134)
at androidx.lifecycle.ReportFragment.dispatch(ReportFragment.java:68)
at androidx.lifecycle.ReportFragment.dispatch(ReportFragment.java:144)
at androidx.lifecycle.ReportFragment.onDestroy(ReportFragment.java:134)
at android.app.Fragment.performDestroy(Fragment.java:2870)
at android.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:1424)
at android.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManagerImpl.java:1549)
at android.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:1612)
at android.app.FragmentManagerImpl.dispatchMoveToState(FragmentManagerImpl.java:3053)
at android.app.FragmentManagerImpl.dispatchDestroy(FragmentManagerImpl.java:3033)
at android.app.FragmentController.dispatchDestroy(FragmentController.java:244)
at android.app.Activity.performDestroy(Activity.java:7257)
at android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1249)
at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:4570)
at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:4601)
at android.app.ActivityThread.-wrap5(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1676)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:231)
at android.app.ActivityThread.main(ActivityThread.java:6749)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
Also have
Fatal Exception: java.lang.IllegalStateException: Compose Runtime internal error. Unexpected or incorrect use of the Compose internal runtime API (Start/end imbalance). Please report to Google or use
at androidx.compose.runtime.ComposerKt.composeRuntimeError(Composer.kt:3466)
at androidx.compose.runtime.ComposerImpl.finalizeCompose(Composer.kt:3550)
at androidx.compose.runtime.ComposerImpl.endRoot(Composer.kt:1237)
at androidx.compose.runtime.ComposerImpl.doCompose(Composer.kt:2588)
at androidx.compose.runtime.ComposerImpl.composeContent$runtime_release(Composer.kt:2522)
at androidx.compose.runtime.CompositionImpl.composeContent(Composition.kt:478)
at androidx.compose.runtime.Recomposer.composeInitial$runtime_release(Recomposer.kt:748)
at androidx.compose.runtime.ComposerImpl$CompositionContextImpl.composeInitial$runtime_release(Composer.kt:2987)
at androidx.compose.runtime.CompositionImpl.setContent(Composition.kt:431)
at androidx.compose.ui.layout.SubcomposeLayoutState.subcomposeInto(SubcomposeLayout.kt:269)
at androidx.compose.ui.layout.SubcomposeLayoutState.access$subcomposeInto(SubcomposeLayout.kt:154)
at androidx.compose.ui.layout.SubcomposeLayoutState$subcompose$2.invoke(SubcomposeLayout.kt:244)
at androidx.compose.ui.layout.SubcomposeLayoutState$subcompose$2.invoke(SubcomposeLayout.kt:241)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.withNoObservations(SnapshotStateObserver.kt:142)
at androidx.compose.ui.node.OwnerSnapshotObserver.withNoSnapshotReadObservation$ui_release(OwnerSnapshotObserver.kt:55)
at androidx.compose.ui.node.LayoutNode.withNoSnapshotReadObservation$ui_release(LayoutNode.kt:1175)
at androidx.compose.ui.layout.SubcomposeLayoutState.subcompose(SubcomposeLayout.kt:241)
at androidx.compose.ui.layout.SubcomposeLayoutState.subcompose(SubcomposeLayout.kt:235)
at androidx.compose.ui.layout.SubcomposeLayoutState.subcompose$ui_release(SubcomposeLayout.kt:224)
at androidx.compose.ui.layout.SubcomposeLayoutState$Scope.subcompose(SubcomposeLayout.kt:490)
at androidx.compose.foundation.lazy.layout.LazyLayoutPlaceablesProvider.getAndMeasure-0kLqBqw(LazyMeasurePolicy.kt:58)
at androidx.compose.foundation.lazy.list.LazyMeasuredItemProvider.getAndMeasure-oA9-DU0(LazyMeasuredItemProvider.kt:45)
at androidx.compose.foundation.lazy.list.LazyListMeasureKt.measureLazyList-wroFCeY(LazyListMeasure.kt:145)
at androidx.compose.foundation.lazy.list.LazyListKt$rememberLazyListMeasurePolicy$1$1.measure-3p2s80s(LazyList.kt:259)
at androidx.compose.foundation.lazy.layout.LazyLayoutKt$LazyLayout$2.invoke-0kLqBqw(LazyLayout.kt:55)
at androidx.compose.foundation.lazy.layout.LazyLayoutKt$LazyLayout$2.invoke(LazyLayout.kt:44)
at androidx.compose.ui.layout.SubcomposeLayoutState$createMeasurePolicy$1.measure-3p2s80s(SubcomposeLayout.kt:355)
at androidx.compose.ui.node.InnerPlaceable.measure-BRTryo0(InnerPlaceable.kt:55)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier.measure-3p2s80s(GraphicsLayerModifier.kt:306)
at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.kt:39)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.foundation.layout.FillModifier.measure-3p2s80s(Size.kt:658)
at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.kt:39)
at androidx.compose.foundation.layout.FillModifier.measure-3p2s80s(Size.kt:658)
at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.kt:39)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:99)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:98)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:126)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:88)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:76)
at androidx.compose.ui.node.OuterMeasurablePlaceable.remeasure-BRTryo0(OuterMeasurablePlaceable.kt:98)
at androidx.compose.ui.node.OuterMeasurablePlaceable.measure-BRTryo0(OuterMeasurablePlaceable.kt:75)
at androidx.compose.ui.node.LayoutNode.measure-BRTryo0(LayoutNode.kt:1308)
at androidx.compose.foundation.layout.RowColumnImplKt$rowColumnMeasurePolicy$1.measure-3p2s80s(RowColumnImpl.kt:147)
at androidx.compose.ui.node.InnerPlaceable.measure-BRTryo0(InnerPlaceable.kt:55)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.foundation.layout.FillModifier.measure-3p2s80s(Size.kt:658)
at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.kt:39)
at androidx.compose.foundation.layout.FillModifier.measure-3p2s80s(Size.kt:658)
at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.kt:39)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:99)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:98)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:126)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:88)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:76)
at androidx.compose.ui.node.OuterMeasurablePlaceable.remeasure-BRTryo0(OuterMeasurablePlaceable.kt:98)
at androidx.compose.ui.node.OuterMeasurablePlaceable.measure-BRTryo0(OuterMeasurablePlaceable.kt:75)
at androidx.compose.ui.node.LayoutNode.measure-BRTryo0(LayoutNode.kt:1308)
at androidx.compose.foundation.layout.RowColumnImplKt$rowColumnMeasurePolicy$1.measure-3p2s80s(RowColumnImpl.kt:147)
at androidx.compose.ui.node.InnerPlaceable.measure-BRTryo0(InnerPlaceable.kt:55)
at androidx.compose.foundation.layout.FillModifier.measure-3p2s80s(Size.kt:658)
at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.kt:39)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:99)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:98)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:126)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:88)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:76)
at androidx.compose.ui.node.OuterMeasurablePlaceable.remeasure-BRTryo0(OuterMeasurablePlaceable.kt:98)
at androidx.compose.ui.node.OuterMeasurablePlaceable.measure-BRTryo0(OuterMeasurablePlaceable.kt:75)
at androidx.compose.ui.node.LayoutNode.measure-BRTryo0(LayoutNode.kt:1308)
at androidx.compose.ui.layout.RootMeasurePolicy.measure-3p2s80s(RootMeasurePolicy.kt:38)
at androidx.compose.ui.node.InnerPlaceable.measure-BRTryo0(InnerPlaceable.kt:55)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:99)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:98)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:1798)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:121)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:88)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:76)
at androidx.compose.ui.node.OuterMeasurablePlaceable.remeasure-BRTryo0(OuterMeasurablePlaceable.kt:98)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.kt:1317)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure(MeasureAndLayoutDelegate.kt:168)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:228)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.access$remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:38)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureAndLayout(MeasureAndLayoutDelegate.kt:201)
at androidx.compose.ui.platform.AndroidComposeView.onMeasure(AndroidComposeView.android.kt:703)
at android.view.View.measure(View.java:27124)
at androidx.compose.ui.platform.AbstractComposeView.internalOnMeasure$ui_release(ComposeView.android.kt:302)
at androidx.compose.ui.platform.AbstractComposeView.onMeasure(ComposeView.android.kt:289)
at android.view.View.measure(View.java:27124)
at androidx.constraintlayout.widget.ConstraintLayout$Measurer.measure(ConstraintLayout.java:811)
at androidx.constraintlayout.core.widgets.analyzer.BasicMeasure.measure(BasicMeasure.java:466)
at androidx.constraintlayout.core.widgets.analyzer.BasicMeasure.measureChildren(BasicMeasure.java:134)
at androidx.constraintlayout.core.widgets.analyzer.BasicMeasure.solverMeasure(BasicMeasure.java:278)
at androidx.constraintlayout.core.widgets.ConstraintWidgetContainer.measure(ConstraintWidgetContainer.java:120)
at androidx.constraintlayout.widget.ConstraintLayout.resolveSystem(ConstraintLayout.java:1594)
at androidx.constraintlayout.widget.ConstraintLayout.onMeasure(ConstraintLayout.java:1708)
at android.view.View.measure(View.java:27124)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7980)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:27124)
at androidx.constraintlayout.widget.ConstraintLayout$Measurer.measure(ConstraintLayout.java:811)
at androidx.constraintlayout.core.widgets.ConstraintWidgetContainer.measure(ConstraintWidgetContainer.java:632)
at androidx.constraintlayout.core.widgets.analyzer.Direct.verticalSolvingPass(Direct.java:453)
at androidx.constraintlayout.core.widgets.analyzer.Direct.solveVerticalMatchConstraint(Direct.java:750)
at androidx.constraintlayout.core.widgets.analyzer.Direct.verticalSolvingPass(Direct.java:505)
at androidx.constraintlayout.core.widgets.analyzer.Direct.verticalSolvingPass(Direct.java:544)
at androidx.constraintlayout.core.widgets.analyzer.Direct.solvingPass(Direct.java:224)
at androidx.constraintlayout.core.widgets.ConstraintWidgetContainer.layout(ConstraintWidgetContainer.java:693)
at androidx.constraintlayout.core.widgets.analyzer.BasicMeasure.solveLinearSystem(BasicMeasure.java:160)
at androidx.constraintlayout.core.widgets.analyzer.BasicMeasure.solverMeasure(BasicMeasure.java:291)
at androidx.constraintlayout.core.widgets.ConstraintWidgetContainer.measure(ConstraintWidgetContainer.java:120)
at androidx.constraintlayout.widget.ConstraintLayout.resolveSystem(ConstraintLayout.java:1594)
at androidx.constraintlayout.widget.ConstraintLayout.onMeasure(ConstraintLayout.java:1708)
at android.view.View.measure(View.java:27124)
at androidx.drawerlayout.widget.DrawerLayout.onMeasure(DrawerLayout.java:1119)
at android.view.View.measure(View.java:27124)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7980)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:145)
at android.view.View.measure(View.java:27124)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7980)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
at android.view.View.measure(View.java:27124)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7980)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:27124)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7980)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
at android.view.View.measure(View.java:27124)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7980)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at com.android.internal.policy.DecorView.onMeasure(DecorView.java:1237)
at android.view.View.measure(View.java:27124)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:4430)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:3135)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3427)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2831)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:10311)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1063)
at android.view.Choreographer.doCallbacks(Choreographer.java:845)
at android.view.Choreographer.doFrame(Choreographer.java:780)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1048)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:226)
at android.os.Looper.loop(Looper.java:313)
at android.app.ActivityThread.main(ActivityThread.java:8641)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:567)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1133)
Fatal Exception: java.lang.NullPointerException
at androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList(RenderNodeLayer.android.kt:292)
at androidx.compose.ui.platform.AndroidComposeView.dispatchDraw(AndroidComposeView.android.kt:857)
at android.view.View.draw(View.java:23904)
at android.view.View.updateDisplayListIfDirty(View.java:22776)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:5320)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:5292)
at android.view.View.updateDisplayListIfDirty(View.java:22731)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:5320)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:5292)
at android.view.View.updateDisplayListIfDirty(View.java:22731)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:5320)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:5292)
at android.view.View.updateDisplayListIfDirty(View.java:22731)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:5320)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:5292)
at android.view.View.updateDisplayListIfDirty(View.java:22731)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:5320)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:5292)
at android.view.View.updateDisplayListIfDirty(View.java:22731)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:5320)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:5292)
at android.view.View.updateDisplayListIfDirty(View.java:22731)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:579)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:585)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:662)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:5042)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:4749)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3866)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2618)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:9971)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1010)
at android.view.Choreographer.doCallbacks(Choreographer.java:809)
at android.view.Choreographer.doFrame(Choreographer.java:744)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:995)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:246)
at android.app.ActivityThread.main(ActivityThread.java:8653)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1130)
Fatal Exception: java.lang.IllegalStateException: Compose Runtime internal error. Unexpected or incorrect use of the Compose internal runtime API (Start/end imbalance). Please report to Google or use
at androidx.compose.runtime.ComposerKt.composeRuntimeError(Composer.kt:3466)
at androidx.compose.runtime.ComposerImpl.finalizeCompose(Composer.kt:3550)
at androidx.compose.runtime.ComposerImpl.endRoot(Composer.kt:1237)
at androidx.compose.runtime.ComposerImpl.doCompose(Composer.kt:2588)
at androidx.compose.runtime.ComposerImpl.composeContent$runtime_release(Composer.kt:2522)
at androidx.compose.runtime.CompositionImpl.composeContent(Composition.kt:478)
at androidx.compose.runtime.Recomposer.composeInitial$runtime_release(Recomposer.kt:748)
at androidx.compose.runtime.ComposerImpl$CompositionContextImpl.composeInitial$runtime_release(Composer.kt:2987)
at androidx.compose.runtime.CompositionImpl.setContent(Composition.kt:431)
at androidx.compose.ui.layout.SubcomposeLayoutState.subcomposeInto(SubcomposeLayout.kt:269)
at androidx.compose.ui.layout.SubcomposeLayoutState.access$subcomposeInto(SubcomposeLayout.kt:154)
at androidx.compose.ui.layout.SubcomposeLayoutState$subcompose$2.invoke(SubcomposeLayout.kt:244)
at androidx.compose.ui.layout.SubcomposeLayoutState$subcompose$2.invoke(SubcomposeLayout.kt:241)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.withNoObservations(SnapshotStateObserver.kt:142)
at androidx.compose.ui.node.OwnerSnapshotObserver.withNoSnapshotReadObservation$ui_release(OwnerSnapshotObserver.kt:55)
at androidx.compose.ui.node.LayoutNode.withNoSnapshotReadObservation$ui_release(LayoutNode.kt:1175)
at androidx.compose.ui.layout.SubcomposeLayoutState.subcompose(SubcomposeLayout.kt:241)
at androidx.compose.ui.layout.SubcomposeLayoutState.subcompose(SubcomposeLayout.kt:235)
at androidx.compose.ui.layout.SubcomposeLayoutState.subcompose$ui_release(SubcomposeLayout.kt:224)
at androidx.compose.ui.layout.SubcomposeLayoutState$Scope.subcompose(SubcomposeLayout.kt:490)
at androidx.compose.foundation.lazy.layout.LazyLayoutPlaceablesProvider.getAndMeasure-0kLqBqw(LazyMeasurePolicy.kt:58)
at androidx.compose.foundation.lazy.list.LazyMeasuredItemProvider.getAndMeasure-oA9-DU0(LazyMeasuredItemProvider.kt:45)
at androidx.compose.foundation.lazy.list.LazyListMeasureKt.measureLazyList-wroFCeY(LazyListMeasure.kt:145)
at androidx.compose.foundation.lazy.list.LazyListKt$rememberLazyListMeasurePolicy$1$1.measure-3p2s80s(LazyList.kt:259)
at androidx.compose.foundation.lazy.layout.LazyLayoutKt$LazyLayout$2.invoke-0kLqBqw(LazyLayout.kt:55)
at androidx.compose.foundation.lazy.layout.LazyLayoutKt$LazyLayout$2.invoke(LazyLayout.kt:44)
at androidx.compose.ui.layout.SubcomposeLayoutState$createMeasurePolicy$1.measure-3p2s80s(SubcomposeLayout.kt:355)
at androidx.compose.ui.node.InnerPlaceable.measure-BRTryo0(InnerPlaceable.kt:55)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier.measure-3p2s80s(GraphicsLayerModifier.kt:306)
at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.kt:39)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.foundation.layout.FillModifier.measure-3p2s80s(Size.kt:658)
at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.kt:39)
at androidx.compose.foundation.layout.FillModifier.measure-3p2s80s(Size.kt:658)
at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.kt:39)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:99)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:98)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:126)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:88)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:76)
at androidx.compose.ui.node.OuterMeasurablePlaceable.remeasure-BRTryo0(OuterMeasurablePlaceable.kt:98)
at androidx.compose.ui.node.OuterMeasurablePlaceable.measure-BRTryo0(OuterMeasurablePlaceable.kt:75)
at androidx.compose.ui.node.LayoutNode.measure-BRTryo0(LayoutNode.kt:1308)
at androidx.compose.foundation.layout.RowColumnImplKt$rowColumnMeasurePolicy$1.measure-3p2s80s(RowColumnImpl.kt:147)
at androidx.compose.ui.node.InnerPlaceable.measure-BRTryo0(InnerPlaceable.kt:55)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.foundation.layout.FillModifier.measure-3p2s80s(Size.kt:658)
at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.kt:39)
at androidx.compose.foundation.layout.FillModifier.measure-3p2s80s(Size.kt:658)
at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.kt:39)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:99)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:98)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:126)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:88)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:76)
at androidx.compose.ui.node.OuterMeasurablePlaceable.remeasure-BRTryo0(OuterMeasurablePlaceable.kt:98)
at androidx.compose.ui.node.OuterMeasurablePlaceable.measure-BRTryo0(OuterMeasurablePlaceable.kt:75)
at androidx.compose.ui.node.LayoutNode.measure-BRTryo0(LayoutNode.kt:1308)
at androidx.compose.foundation.layout.RowColumnImplKt$rowColumnMeasurePolicy$1.measure-3p2s80s(RowColumnImpl.kt:147)
at androidx.compose.ui.node.InnerPlaceable.measure-BRTryo0(InnerPlaceable.kt:55)
at androidx.compose.foundation.layout.FillModifier.measure-3p2s80s(Size.kt:658)
at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.kt:39)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:99)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:98)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:126)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:88)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:76)
at androidx.compose.ui.node.OuterMeasurablePlaceable.remeasure-BRTryo0(OuterMeasurablePlaceable.kt:98)
at androidx.compose.ui.node.OuterMeasurablePlaceable.measure-BRTryo0(OuterMeasurablePlaceable.kt:75)
at androidx.compose.ui.node.LayoutNode.measure-BRTryo0(LayoutNode.kt:1308)
at androidx.compose.ui.layout.RootMeasurePolicy.measure-3p2s80s(RootMeasurePolicy.kt:38)
at androidx.compose.ui.node.InnerPlaceable.measure-BRTryo0(InnerPlaceable.kt:55)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.kt:131)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:99)
at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.kt:98)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:1798)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:121)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:88)
at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:76)
at androidx.compose.ui.node.OuterMeasurablePlaceable.remeasure-BRTryo0(OuterMeasurablePlaceable.kt:98)
at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.kt:1317)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure(MeasureAndLayoutDelegate.kt:168)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:228)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.access$remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:38)
at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureAndLayout(MeasureAndLayoutDelegate.kt:201)
at androidx.compose.ui.platform.AndroidComposeView.onMeasure(AndroidComposeView.android.kt:703)
at android.view.View.measure(View.java:17565)
at androidx.compose.ui.platform.AbstractComposeView.internalOnMeasure$ui_release(ComposeView.android.kt:302)
at androidx.compose.ui.platform.AbstractComposeView.onMeasure(ComposeView.android.kt:289)
at android.view.View.measure(View.java:17565)
at androidx.constraintlayout.widget.ConstraintLayout$Measurer.measure(ConstraintLayout.java:811)
at androidx.constraintlayout.core.widgets.analyzer.BasicMeasure.measure(BasicMeasure.java:466)
at androidx.constraintlayout.core.widgets.analyzer.BasicMeasure.measureChildren(BasicMeasure.java:134)
at androidx.constraintlayout.core.widgets.analyzer.BasicMeasure.solverMeasure(BasicMeasure.java:278)
at androidx.constraintlayout.core.widgets.ConstraintWidgetContainer.measure(ConstraintWidgetContainer.java:120)
at androidx.constraintlayout.widget.ConstraintLayout.resolveSystem(ConstraintLayout.java:1594)
at androidx.constraintlayout.widget.ConstraintLayout.onMeasure(ConstraintLayout.java:1708)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
at android.view.View.measure(View.java:17565)
at androidx.constraintlayout.widget.ConstraintLayout$Measurer.measure(ConstraintLayout.java:811)
at androidx.constraintlayout.core.widgets.ConstraintWidgetContainer.measure(ConstraintWidgetContainer.java:632)
at androidx.constraintlayout.core.widgets.analyzer.Direct.verticalSolvingPass(Direct.java:453)
at androidx.constraintlayout.core.widgets.analyzer.Direct.solveVerticalMatchConstraint(Direct.java:750)
at androidx.constraintlayout.core.widgets.analyzer.Direct.verticalSolvingPass(Direct.java:505)
at androidx.constraintlayout.core.widgets.analyzer.Direct.verticalSolvingPass(Direct.java:544)
at androidx.constraintlayout.core.widgets.analyzer.Direct.solvingPass(Direct.java:224)
at androidx.constraintlayout.core.widgets.ConstraintWidgetContainer.layout(ConstraintWidgetContainer.java:693)
at androidx.constraintlayout.core.widgets.analyzer.BasicMeasure.solveLinearSystem(BasicMeasure.java:160)
at androidx.constraintlayout.core.widgets.analyzer.BasicMeasure.solverMeasure(BasicMeasure.java:291)
at androidx.constraintlayout.core.widgets.ConstraintWidgetContainer.measure(ConstraintWidgetContainer.java:120)
at androidx.constraintlayout.widget.ConstraintLayout.resolveSystem(ConstraintLayout.java:1594)
at androidx.constraintlayout.widget.ConstraintLayout.onMeasure(ConstraintLayout.java:1708)
at android.view.View.measure(View.java:17565)
at androidx.drawerlayout.widget.DrawerLayout.onMeasure(DrawerLayout.java:1119)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:145)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:722)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:613)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:722)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:613)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2615)
at android.view.View.measure(View.java:17565)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2045)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1196)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1409)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1084)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5990)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767)
at android.view.Choreographer.doCallbacks(Choreographer.java:580)
at android.view.Choreographer.doFrame(Choreographer.java:550)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:753)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5343)
at java.lang.reflect.Method.invoke(Method.java)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:905)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:700)
Caused by java.lang.IllegalStateException: LayoutCoordinate operations are only valid when isAttached is true
at androidx.compose.ui.node.LayoutNodeWrapper.getParentLayoutCoordinates(LayoutNodeWrapper.kt:168)
at androidx.compose.ui.layout.LayoutCoordinatesKt.findRoot(LayoutCoordinates.kt:158)
at androidx.compose.ui.semantics.SemanticsWrapper.touchBoundsInRoot(SemanticsWrapper.kt:88)
at androidx.compose.ui.semantics.SemanticsNode.getTouchBoundsInRoot(SemanticsNode.kt:93)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat_androidKt.getAllUncoveredSemanticsNodesToMap$findAllSemanticNodesRecursive(AndroidComposeViewAccessibilityDelegateCompat.android.kt:2518)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat_androidKt.getAllUncoveredSemanticsNodesToMap$findAllSemanticNodesRecursive(AndroidComposeViewAccessibilityDelegateCompat.android.kt:2533)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat_androidKt.getAllUncoveredSemanticsNodesToMap(AndroidComposeViewAccessibilityDelegateCompat.android.kt:2559)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat.getCurrentSemanticsNodes(AndroidComposeViewAccessibilityDelegateCompat.android.kt:228)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat.createNodeInfo(AndroidComposeViewAccessibilityDelegateCompat.android.kt:337)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat.access$sendScrollEventIfNeeded(AndroidComposeViewAccessibilityDelegateCompat.android.kt:113)
at androidx.compose.ui.platform.AndroidComposeViewAccessibilityDelegateCompat$MyNodeProvider.createAccessibilityNodeInfo(AndroidComposeViewAccessibilityDelegateCompat.android.kt:2391)
at android.view.View.createAccessibilityNodeInfoInternal(View.java:7918)
at android.view.View$AccessibilityDelegate.createAccessibilityNodeInfo(View.java:27418)
at android.view.View.createAccessibilityNodeInfo(View.java:7904)
at android.view.accessibility.AccessibilityRecord.setSource(AccessibilityRecord.java:146)
at android.view.accessibility.AccessibilityRecord.setSource(AccessibilityRecord.java:119)
at android.view.View.onInitializeAccessibilityEventInternal(View.java:7858)
at android.view.View$AccessibilityDelegate.onInitializeAccessibilityEvent(View.java:27301)
at androidx.core.view.AccessibilityDelegateCompat.onInitializeAccessibilityEvent(AccessibilityDelegateCompat.java:257)
at androidx.core.view.AccessibilityDelegateCompat$AccessibilityDelegateAdapter.onInitializeAccessibilityEvent(AccessibilityDelegateCompat.java:76)
at android.view.View.onInitializeAccessibilityEvent(View.java:7844)
at android.view.View.sendAccessibilityEventUncheckedInternal(View.java:7708)
at android.view.View$AccessibilityDelegate.sendAccessibilityEventUnchecked(View.java:27240)
at androidx.core.view.AccessibilityDelegateCompat.sendAccessibilityEventUnchecked(AccessibilityDelegateCompat.java:196)
at androidx.core.view.AccessibilityDelegateCompat$AccessibilityDelegateAdapter.sendAccessibilityEventUnchecked(AccessibilityDelegateCompat.java:113)
at android.view.View.sendAccessibilityEventUnchecked(View.java:7691)
at android.view.ViewRootImpl$SendWindowContentChangedAccessibilityEvent.run(ViewRootImpl.java:9304)
at android.view.ViewRootImpl$SendWindowContentChangedAccessibilityEvent.runOrPost(ViewRootImpl.java:9330)
at android.view.ViewRootImpl.postSendWindowContentChangedCallback(ViewRootImpl.java:8267)
at android.view.ViewRootImpl.notifySubtreeAccessibilityStateChanged(ViewRootImpl.java:8442)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3776)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3776)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3776)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3776)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3776)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3776)
at android.view.View.notifySubtreeAccessibilityStateChangedIfNeeded(View.java:11901)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChangedIfNeeded(ViewGroup.java:3800)
at android.view.ViewGroup.notifySubtreeAccessibilityStateChangedIfNeeded(ViewGroup.java:3796)
at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5456)
at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5403)
at android.view.ViewGroup.removeView(ViewGroup.java:5334)
at androidx.compose.ui.platform.AndroidComposeView.removeAndroidView(AndroidComposeView.android.kt:618)
at androidx.compose.ui.viewinterop.AndroidViewHolder$layoutNode$1$4.invoke(AndroidViewHolder.android.kt:276)
at androidx.compose.ui.viewinterop.AndroidViewHolder$layoutNode$1$4.invoke(AndroidViewHolder.android.kt:275)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:363)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:374)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:374)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:374)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:374)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:374)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:374)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:374)
at androidx.compose.ui.node.LayoutNode.detach$ui_release(LayoutNode.kt:374)
at androidx.compose.ui.node.LayoutNode.removeAll$ui_release(LayoutNode.kt:269)
at androidx.compose.ui.node.UiApplier.onClear(UiApplier.android.kt:44)
at androidx.compose.runtime.AbstractApplier.clear(Applier.kt:210)
at androidx.compose.runtime.CompositionImpl.dispose(Composition.kt:495)
at androidx.compose.ui.platform.WrappedComposition.dispose(Wrapper.android.kt:171)
at androidx.compose.ui.platform.WrappedComposition.onStateChanged(Wrapper.android.kt:179)
at androidx.lifecycle.LifecycleRegistry$ObserverWithState.dispatchEvent(LifecycleRegistry.java:354)
at androidx.lifecycle.LifecycleRegistry.backwardPass(LifecycleRegistry.java:284)
at androidx.lifecycle.LifecycleRegistry.sync(LifecycleRegistry.java:302)
at androidx.lifecycle.LifecycleRegistry.moveToState(LifecycleRegistry.java:148)
at androidx.lifecycle.LifecycleRegistry.handleLifecycleEvent(LifecycleRegistry.java:134)
at androidx.lifecycle.ReportFragment.dispatch(ReportFragment.java:68)
at androidx.lifecycle.ReportFragment.dispatch(ReportFragment.java:144)
at androidx.lifecycle.ReportFragment.onDestroy(ReportFragment.java:134)
at android.app.Fragment.performDestroy(Fragment.java:2870)
at android.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:1424)
at android.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManagerImpl.java:1549)
at android.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:1611)
at android.app.FragmentManagerImpl.dispatchMoveToState(FragmentManagerImpl.java:3045)
at android.app.FragmentManagerImpl.dispatchDestroy(FragmentManagerImpl.java:3025)
at android.app.FragmentController.dispatchDestroy(FragmentController.java:245)
at android.app.Activity.performDestroy(Activity.java:7521)
at android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1255)
at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:4592)
at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:4623)
at android.app.ActivityThread.-wrap5(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1757)
at android.os.Handler.dispatchMessage(Handler.java:105)
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)
etc, etc, etc, I can go with those crashes in random places for hours. 99% of those crashes- samsungs. All of them after 6-8 hours of device sleep, still to this day I'm trying to figure out what compose view does this.
kf...@gmail.com <kf...@gmail.com> #7
em...@gmail.com <em...@gmail.com> #8
Branch: androidx-main
commit c505dbf74711673fc60871fa6980899a7f70c068
Author: System Administrator <soboleva@google.com>
Date: Wed Mar 16 18:58:54 2022
Fix of crash in acessibility code path
It's a blind fix since the issue is not reproducable locally. The logs suggest the parent is getting detached while we're calculating the uncovered semantics nodes. It seems like the activity (and hence compose view) is destroyed but then the accessibility delegate is called. So this fix ensures that node info is not created if we're in destroyed state.
I'll keep the test that was failing flaky and re-enable it later after observing it for a while in CI.
Test: N/A
Bug: 206967867
Bug: 215116019
Change-Id: If9d3a20699056e39b40f27b6a674b9f96cee3420
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/AndroidComposeViewAccessibilityDelegateCompat.android.kt
re...@gmail.com <re...@gmail.com> #9
val data = state.anyData ?: return
crashes phones, while
val data = state.anyData
if(data != null){
//do your code
}
dont crashes phones.
And the best part is that emulator google pixel 5 with api 31 crashes 100% times instantly on my side with config of
kotlin_version = 1.6.10
compose_version = 1.1.1
and by running
@Composable
fun ComposeSplashUI() {
Box(
contentAlignment = Alignment.BottomEnd,
modifier = Modifier
.background(color = Color.Black)
.fillMaxSize()
) {
Text(text = "reachable and its fine")
return@Box
Text(text = "Unreachable and its fine")
}
}
java.lang.IllegalStateException: Compose Runtime internal error. Unexpected or incorrect use of the Compose internal runtime API (Start/end imbalance). Please report to Google or use
at androidx.compose.runtime.ComposerKt.composeRuntimeError(Composer.kt:3466)
at androidx.compose.runtime.ComposerImpl.finalizeCompose(Composer.kt:3550)
at androidx.compose.runtime.ComposerImpl.endRoot(Composer.kt:1237)
at androidx.compose.runtime.ComposerImpl.doCompose(Composer.kt:2588)
at androidx.compose.runtime.ComposerImpl.composeContent$runtime_release(Composer.kt:2522)
at androidx.compose.runtime.CompositionImpl.composeContent(Composition.kt:478)
at androidx.compose.runtime.Recomposer.composeInitial$runtime_release(Recomposer.kt:748)
at androidx.compose.runtime.CompositionImpl.setContent(Composition.kt:433)
at androidx.compose.ui.platform.WrappedComposition$setContent$1.invoke(Wrapper.android.kt:140)
at androidx.compose.ui.platform.WrappedComposition$setContent$1.invoke(Wrapper.android.kt:131)
at androidx.compose.ui.platform.AndroidComposeView.setOnViewTreeOwnersAvailable(AndroidComposeView.android.kt:907)
at androidx.compose.ui.platform.WrappedComposition.setContent(Wrapper.android.kt:131)
at androidx.compose.ui.platform.WrappedComposition.onStateChanged(Wrapper.android.kt:182)
at androidx.lifecycle.LifecycleRegistry$ObserverWithState.dispatchEvent(LifecycleRegistry.java:354)
at androidx.lifecycle.LifecycleRegistry.addObserver(LifecycleRegistry.java:196)
at androidx.compose.ui.platform.WrappedComposition$setContent$1.invoke(Wrapper.android.kt:138)
at androidx.compose.ui.platform.WrappedComposition$setContent$1.invoke(Wrapper.android.kt:131)
at androidx.compose.ui.platform.AndroidComposeView.onAttachedToWindow(AndroidComposeView.android.kt:994)
at android.view.View.dispatchAttachedToWindow(View.java:20753)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3490)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3497)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3497)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3497)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3497)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3497)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3497)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2613)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2126)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8653)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1037)
at android.view.Choreographer.doCallbacks(Choreographer.java:845)
at android.view.Choreographer.doFrame(Choreographer.java:780)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1022)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at android.app.ActivityThread.main(ActivityThread.java:7839)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)
which makes me think there is something wrong with returns in kotlin. Can you, please, confirm you have same issue?
fl...@gmail.com <fl...@gmail.com> #10
Marking this bug as resolved for the original crash report in
kf...@gmail.com <kf...@gmail.com> #11
We have the same issue when navigating to GoogleMaps Compose on Android 7 devices (Samsung & Xiaomi).
soboleva@google.com, which version is going to include this fix?
Thanks
Description
Google Play System Update (Under Settings > Security) is gone after updating Google Play Store App.
Furthermore, Google Play System update version does show under (Settings > About this Phone > Android Version) however tapping it does nothing and thus does not initiate a check for update.
Issue started for me on (Android 11) (stock Android) after updating Google Play Store from version "31.8.20" to Play Store version: "31.9.13-21 [0] [PR] 467268234"
Rollback to the former version of the Play Store app is a temp fix, however as soon as Play Store App is updated to version last mentioned here the issue re-appears.