maxrave-dev / maxrave-dev/SimpMusic

The App Error after a while. New to restart app

Open
#2,422 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Kotlin
Stars
11.4k
Forks
599
Avg merge
3d 18h
Merged PRs (30d)
7

Description

Duplicate Check
  • I confirm I searched for existing reports and found no duplicates.
Describe the Bug

Build version: 2.0.0
Current date: 2026-08-29 23:09:34
Device: HONOR PTP-N49
OS version: Android 16 (SDK 36)

Stack trace:
java.lang.IllegalStateException: Attempting to drawContent for a null node. This usually means that a call to ContentDrawScope#drawContent() has been captured inside a lambda, and is being invoked outside of the draw pass. Capturing the scope this way is unsupported - if you are trying to record drawContent with graphicsLayer.record(), make sure you are using the GraphicsLayer#record function within DrawScope, instead of the member function on GraphicsLayer.
at si5.c(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:3)
at o89.e(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:1)
at ek6.b(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:185)
at p71.invoke(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:12)
at f7.f(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:114)
at f7.invoke(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:152)
at or4.d(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:47)
at zr.invoke(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:362)
at vr4.O(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:77)
at or4.f(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:55)
at ek6.O0(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:17)
at rn7.K0(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:230)
at ek6.k(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:52)
at bt8.t1(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:48)
at ys8.d(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:25)
at o1c.d(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:308)
at zv6.invoke(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:1115)
at ur2.invoke(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:875)
at or4.d(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:47)
at zr.invoke(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:362)
at vr4.O(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:77)
at or4.f(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:55)
at rr4.g(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:106)
at androidx.compose.ui.platform.AndroidComposeView.dispatchDraw(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:76)
at android.view.View.draw(View.java:26612)
at android.view.View.updateDisplayListIfDirty(View.java:25369)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4864)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4837)
at android.view.View.updateDisplayListIfDirty(View.java:25310)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4864)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4837)
at android.view.View.updateDisplayListIfDirty(View.java:25310)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4864)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4837)
at android.view.View.updateDisplayListIfDirty(View.java:25310)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4864)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4837)
at android.view.View.updateDisplayListIfDirty(View.java:25310)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4864)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4837)
at android.view.View.updateDisplayListIfDirty(View.java:25310)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4864)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4837)
at android.view.View.updateDisplayListIfDirty(View.java:25310)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:768)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:774)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:884)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:8093)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:7693)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:6446)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:4552)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:13818)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:2539)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:2548)
at android.view.Choreographer.doCallbacks(Choreographer.java:1690)
at android.view.Choreographer.doFrame(Choreographer.java:1513)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:2458)
at android.os.Handler.handleCallback(Handler.java:1039)
at android.os.Handler.dispatchMessage(Handler.java:117)
at android.os.Looper.loopOnce(Looper.java:263)
at android.os.Looper.loop(Looper.java:360)
at android.app.ActivityThread.main(ActivityThread.java:10813)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:648)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1012)

User actions:
2026-08-29 22:51:29: MainActivity created
2026-08-29 22:51:29: MainActivity resumed
2026-08-29 22:52:53: MainActivity paused
2026-08-29 22:52:59: MainActivity resumed
2026-08-29 22:53:27: MainActivity paused
2026-08-29 22:54:00: MainActivity resumed
2026-08-29 22:54:42: MainActivity paused
2026-08-29 23:01:40: MainActivity resumed
2026-08-29 23:01:47: MainActivity paused
2026-08-29 23:02:38: MainActivity resumed
2026-08-29 23:02:42: MainActivity paused
2026-08-29 23:03:43: MainActivity resumed
2026-08-29 23:03:43: MainActivity paused
2026-08-29 23:03:43: MainActivity resumed
2026-08-29 23:04:19: MainActivity paused
2026-08-29 23:07:36: MainActivity resumed

Steps to Reproduce

Build version: 2.0.0
Current date: 2026-08-29 23:09:34
Device: HONOR PTP-N49
OS version: Android 16 (SDK 36)

Stack trace:
java.lang.IllegalStateException: Attempting to drawContent for a null node. This usually means that a call to ContentDrawScope#drawContent() has been captured inside a lambda, and is being invoked outside of the draw pass. Capturing the scope this way is unsupported - if you are trying to record drawContent with graphicsLayer.record(), make sure you are using the GraphicsLayer#record function within DrawScope, instead of the member function on GraphicsLayer.
at si5.c(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:3)
at o89.e(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:1)
at ek6.b(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:185)
at p71.invoke(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:12)
at f7.f(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:114)
at f7.invoke(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:152)
at or4.d(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:47)
at zr.invoke(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:362)
at vr4.O(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:77)
at or4.f(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:55)
at ek6.O0(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:17)
at rn7.K0(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:230)
at ek6.k(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:52)
at bt8.t1(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:48)
at ys8.d(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:25)
at o1c.d(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:308)
at zv6.invoke(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:1115)
at ur2.invoke(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:875)
at or4.d(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:47)
at zr.invoke(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:362)
at vr4.O(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:77)
at or4.f(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:55)
at rr4.g(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:106)
at androidx.compose.ui.platform.AndroidComposeView.dispatchDraw(r8-map-id-9ee9db6588429f4b55b9b589c5eaad3f144d6927c8219081c7b3177520329938:76)
at android.view.View.draw(View.java:26612)
at android.view.View.updateDisplayListIfDirty(View.java:25369)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4864)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4837)
at android.view.View.updateDisplayListIfDirty(View.java:25310)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4864)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4837)
at android.view.View.updateDisplayListIfDirty(View.java:25310)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4864)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4837)
at android.view.View.updateDisplayListIfDirty(View.java:25310)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4864)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4837)
at android.view.View.updateDisplayListIfDirty(View.java:25310)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4864)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4837)
at android.view.View.updateDisplayListIfDirty(View.java:25310)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4864)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4837)
at android.view.View.updateDisplayListIfDirty(View.java:25310)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:768)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:774)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:884)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:8093)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:7693)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:6446)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:4552)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:13818)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:2539)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:2548)
at android.view.Choreographer.doCallbacks(Choreographer.java:1690)
at android.view.Choreographer.doFrame(Choreographer.java:1513)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:2458)
at android.os.Handler.handleCallback(Handler.java:1039)
at android.os.Handler.dispatchMessage(Handler.java:117)
at android.os.Looper.loopOnce(Looper.java:263)
at android.os.Looper.loop(Looper.java:360)
at android.app.ActivityThread.main(ActivityThread.java:10813)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:648)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1012)

User actions:
2026-08-29 22:51:29: MainActivity created
2026-08-29 22:51:29: MainActivity resumed
2026-08-29 22:52:53: MainActivity paused
2026-08-29 22:52:59: MainActivity resumed
2026-08-29 22:53:27: MainActivity paused
2026-08-29 22:54:00: MainActivity resumed
2026-08-29 22:54:42: MainActivity paused
2026-08-29 23:01:40: MainActivity resumed
2026-08-29 23:01:47: MainActivity paused
2026-08-29 23:02:38: MainActivity resumed
2026-08-29 23:02:42: MainActivity paused
2026-08-29 23:03:43: MainActivity resumed
2026-08-29 23:03:43: MainActivity paused
2026-08-29 23:03:43: MainActivity resumed
2026-08-29 23:04:19: MainActivity paused
2026-08-29 23:07:36: MainActivity resumed

Expected Behavior

I will not have to restart the app many times

App Version

2.0.0

Android Version

16

Device Model

Honor Magic 7 pro

Custom ROM
  • I am using a custom ROM
Custom ROM Name (if applicable)

No response

Screenshots (optional)

No response

Log / Error Details

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the crash on Android 16 with the reported HONOR PTP-N49 lifecycle sequence, then trace the obfuscated stack through AndroidComposeView and the Compose drawing path. Identify which app screen or drawing operation triggers the null-node error. Done means the app no longer crashes after repeated pause and resume cycles.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.