jamulussoftware / jamulussoftware/jamulus

Android: denying the microphone permission exits the app silently

Offen Anfängerfreundlich
#3,846 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
AI
Vorherrschende Sprache
C
Sterne
1.1k
Forks
248
Ø Merge
2 T. 3 Std.
Gemergte PRs (30 T.)
9

Beschreibung

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.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne bei src/main.cpp:833-841 und verfolge den Pfad für die Verweigerung der Android-Berechtigung, der unmittelbar zurückkehrt, nachdem RECORD_AUDIO verweigert wurde. Reproduziere das Verhalten unter Android und untersuche logcat; abgeschlossen ist die Aufgabe, wenn die App vor dem Beenden die fehlende Mikrofonberechtigung meldet und das Verhalten des Exit-Status wie im Issue beschrieben behandelt wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
android, cpp
Bereich
audio-video-rtc, mobile-dev
Issue-Typ
Bug
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Ruhig
Klarheit
Klar beschrieben
Anfängerfreundlichkeit
78/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.