onPlaybackResumption() returning exception leads to hard-to-debug ForegroundServiceDidNotStartInTimeException
@marcbaechinger is already working on this.
Since Jul 7, 2025.
- Dominant language
- Java
- Stars
- 3k
- Forks
- 955
- Avg merge
- 12d 14h
- Merged PRs (30d)
- 2
Description
Version
Media3 main branch
More version details
No response
Devices that reproduce the issue
Android 12 and later
Devices that do not reproduce the issue
older devices
Reproducible in the demo app?
Yes
Reproduction steps
- Press "Play" button on headset
- ensure onPlaybackResumption() returns exception (or: just don't override it at all)
Expected result
useful crash
Actual result
App crashes with ForegroundServiceDidNotStartInTimeException because media button reciever (by default) always forwards play events, app returns some exception so the play handling just moves player to STATE_ENDED (empty playlist after all), which is not considered engaging (and rightfully so), hence there's no attempt to start into foreground and we crash.
Though these are properly logged to logcat, these crashes are hard to debug when just looking at Crashlytics, which is why I think there's potential for improvement here. If we know for sure we're going to crash anyway, we might as well re-throw the exception in the future as cause for some IllegalStateException explaining the problem.
Media
Not applicable
Bug Report
- You will email the zip file produced by
adb bugreportto android-media-github@google.com after filing this issue.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.