jamulussoftware / jamulussoftware/jamulus
Android: denying the microphone permission exits the app silently
- Dominant language
- C
- Stars
- 1.1k
- Forks
- 248
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 9
Description
MY LLM WROTE:
As promised in #2570 — on Android, denying the `RECORD_AUDIO` permission exits the app with no message of any kind: no window, no dialog, no toast. The user taps the icon and stays on their home screen.
It is deliberate (`src/main.cpp:833-841`, a bare `return 0`), and the exit status is 0, so nothing marks it as a failure. The trap is that Android sets `USER_FIXED` on an explicit deny, which suppresses the permission dialog on every later launch — so the app is then permanently unstartable with no in-app way back and no explanation.
Reproduced 8/8 on two builds (mainline `3.12.3dev-1f9667ec` and a PR build), Android 16 / arm64 / Qt 5.15.2, one device. `exit app 0` appears in logcat ~200 ms after the library loads.
A message naming the microphone permission before exiting would fix it. Non-zero exit status would help tooling too.
@ann0see — you suggested denied permissions cause bad states on all platforms. Likely, but I only tested Android, and this mechanism is Android-specific, so I'd treat the desktop cases as separate.
Contributor guide
Research direction
Start at src/main.cpp:833-841 and trace the Android permission-denial path that returns immediately after RECORD_AUDIO is denied. Reproduce the behavior on Android and inspect logcat; done means the app reports the missing microphone permission before exiting, with the exit status behavior addressed as described in the issue.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, cpp
- Domain
- audio-video-rtc, mobile-dev
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 78/100