refactor(web+android): nur Warteschlange und Titel sichern, keine Sekunden

Das Mitschreiben der Abspielposition war zu viel des Guten: es bedeutete
staendiges Schreiben waehrend der Wiedergabe fuer einen Gewinn, den man kaum
bemerkt. Gesichert werden jetzt nur Warteschlange und aktueller Titel, der dann
von vorn beginnt.

Der eigentliche Gewinn bleibt und war der Ausloeser: unter Android war die
Now-Playing-Leiste nach dem Oeffnen leer, bis man einmal auf Play drueckte —
gesichert war nur der letzte Song, nicht die Warteschlange. Das Wiederherstellen
fuellt den Zustand jetzt ueber syncState(), also ohne Abspielen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
marcandClaude Opus 5 committed 2026-09-06 23:25:06 +02:00
1 parent 65fa950043
commit a2211a62d2
6 files changed
+25 -67

No files matched your search

+9 -10
View File
@@ -72,16 +72,15 @@ Versioning: two-part `MAJOR.MINOR` — each release bumps the minor (features an
## [2.4] — 2026-09-06
### Added
- **Wiedergabe fortsetzen, wo du aufgehört hast (Web + Android)** — bisher überlebte im Web nur der
zuletzt gespielte Titel und die Warteschlange, aber **nicht die Position im Titel**; Android
sicherte allein den letzten Song, ohne Warteschlange. Jetzt merken sich beide Warteschlange,
Listenposition und Sekunde im Titel. Web schreibt gedrosselt beim Abspielen sowie sicher beim
Pausieren, Wegwischen und Wechseln des Tabs (`pagehide`/`visibilitychange` statt `beforeunload`,
das am Handy unzuverlässig ist). Android sichert bei jedem Titelwechsel und beim Pausieren und
stellt die Warteschlange nach dem Verbinden wieder her — **vorbereitet, aber nicht abgespielt**:
ein Druck auf Play macht weiter. Lag die Position im letzten Rest des Titels, beginnt er von vorn,
statt zwei Sekunden Abspann zu spielen. Gespeichert werden nur Song-Ids; verschwundene Titel
werden beim Wiederherstellen übersprungen.
- **Zuletzt Gehörtes überlebt den Neustart (Web + Android)** — Android sicherte bisher nur den
letzten Song, ohne Warteschlange: die Now-Playing-Leiste blieb nach dem Öffnen **leer, bis man
einmal auf Play drückte**. Jetzt merken sich beide Plattformen Warteschlange und aktuellen Titel
und stellen sie beim Start wieder her — Android **vorbereitet, aber nicht abgespielt**, damit
einen die App beim Öffnen nicht überfällt; läuft schon etwas, passiert nichts. Der Titel beginnt
von vorn: die Sekunde im Titel wird bewusst **nicht** gespeichert, das spart dauerndes Schreiben
während der Wiedergabe. Gesichert werden nur Song-Ids, weil Titel und Cover sich durch
Metadaten-Bearbeitung ändern können; verschwundene Titel werden übersprungen.
- **Streitpunkte im Musik-Duell (Web + Android)** — gemeinsame Künstler, sortiert nach dem größten
**Ungleichgewicht** statt nach der Summe: wo einer 120 Plays hat und der andere 3. Ein Balken
zeigt das Kräfteverhältnis. Mindestens vier gemeinsame Plays und 50 % Unwucht, damit ein einzelner