Android: alarm cues are silent — AndroidAlarmService is a no-op
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 47/100
- Issue type
- Feature
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- android, csharp
- Domain
- audio-video-rtc, mobile
Research direction
Start with src/LageBuch.App.Android/Services/AndroidAlarmService.cs and compare its no-op Play method with SystemAlarmService.VoiceAssets to identify the four clips and playback expectations. Check Lagebuch.App.csproj for how the WAV files are bundled, then inspect #603 for the planned playback failure reporting on IAlarmService. Done means Android plays all four cues sequentially, surfaces failures consistently, and has a test that catches any missing bundled clip.
Written by the indexing model from the issue text.
Description
Problem
On Android, AndroidAlarmService.Play is an empty no-op (src/LageBuch.App.Android/Services/AndroidAlarmService.cs). None of the spoken cues sound on a tablet or phone:
- „Rückmeldung an die Leitstelle“ (ILS reminder)
- „Aufgabe fällig“
- „Druckabfrage fällig“
- „Rückzugsalarm“ — repeated until acknowledged
The class comment calls a real implementation "an explicit follow-up", but there was no ticket for it. A Lagebuchführer running Atemschutzüberwachung on a tablet gets the red banner and nothing else.
Expected
AndroidAlarmServiceplays the same four voice clips as the desktop (SystemAlarmService.VoiceAssets), one after another rather than overlapping.- Use the platform's own API (
SoundPoolorMediaPlayer), no new dependency. - Play with
AudioAttributes.USAGE_ALARM, so the Rückzugsalarm is still audible when the device is on silent or the media volume is down. Whether every cue or only the Atemschutz cues should use the alarm stream is worth a decision in the PR. - The clips are currently bundled only by
LageBuch.App.csproj(Assets/*.wav); the Android head needs them too.
Notes
- Related: #603 (playback failures are silent). Whatever reporting #603 adds to
IAlarmServiceshould be implemented here as well, so a failing Android player surfaces the same way. SystemAlarmServiceTests.Every_alarm_sound_has_a_bundled_voice_clipshould get an Android counterpart, so a missing clip cannot ship a mute alarm.
- Dominant language
- C#
- Stars
- 1
- Forks
- 3
- Avg merge
- 4h 34m
- Merged PRs (30d)
- 182
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing 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.
More from CodeForFire/lagebuch
-
bug ux
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
CodeForFire/lagebuch#714 ·
Maintainers usually reply within 1 day
-
bug ux
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
CodeForFire/lagebuch#713 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
CodeForFire/lagebuch#405 ·
Maintainers usually reply within 1 day
-
documentation good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
CodeForFire/lagebuch#349 ·
Maintainers usually reply within 1 day
-
documentation good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
CodeForFire/lagebuch#348 ·
Maintainers usually reply within 1 day
All issues in CodeForFire/lagebuch
Similar issues
-
/api/oauth/introspect emits clientId and tokenType instead of RFC 7662's client_id and token_typeOpenbug P2
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
nightscout/nocturne#2317 ·
Maintainers usually reply within 1 day
-
[BUG]: Position intent set on a simple order is dropped when it becomes a bracket, OCO or OTO orderPossibly taken @RaphaelFakhri claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
alpacahq/alpaca-trade-api-csharp#903 ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 64/100
joinrpg/joinrpg-net#5752 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
dimitar-radenkov/Pointframe#294 ·
Maintainers usually reply within 1 day
-
kind/feature-request
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Altinn/altinn-correspondence#2154 ·
Maintainers usually reply within 1 day