diff options
| author | Paul Buetow <paul@buetow.org> | 2026-05-21 09:00:59 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-05-21 09:00:59 +0300 |
| commit | b302c60cdeb24ad7f5d3bb39fd6e234c79e1e4d8 (patch) | |
| tree | d62c0c3d9702195b35985829c6b981c68b2d3850 /player-android/lib/utils/error_mappers.dart | |
| parent | 87c6ebd9949866775e1c62041cf6cf15009d8de6 (diff) | |
Implement AudioPlayerScreen with just_audio, progress sync, and bearer auth (0b)
Replaces the placeholder AudioPlayerScreen with a full implementation:
- Streams audio via just_audio AudioPlayer with Bearer token in headers
- Progress sync mirrors VideoPlayerScreen exactly: 5 s timer, isPlaying guard,
95 % finished threshold, _finishedEmitted guard, same dispose order
- UI: cover art placeholder, StreamBuilder-backed seek bar, play/pause,
skip ±15 s (fast_rewind/fast_forward icons), speed selector (0.5–2x)
- Resume from server-saved position via getMediaProgress on init
- Error state with retry button; all async continuations guard on mounted
- Widget tests cover: loading spinner, error view structure, AppBar title,
URL resolution; audio_session channel mocked to unblock headless tests
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'player-android/lib/utils/error_mappers.dart')
0 files changed, 0 insertions, 0 deletions
