Positions-Timer ueberlebt stop(); K4 im Review-Bericht richtiggestellt
stop() brach _positionRecordTimer ab. Der Timer entsteht nur einmal im Konstruktor, war also fuer den Rest der Sitzung weg. Da auch das System stop() aufruft (Benachrichtigung wegwischen), merkte sich die App danach keine Hoerposition mehr und scrobbelte nicht — bis zum Neustart und ohne Hinweis. Der Timer steigt ohnehin selbst aus, solange nichts laeuft; abgebrochen wird er jetzt nur noch in dispose(). Dazu eine Korrektur am eigenen Review: K4 behauptete, die Alben-Achse sei verlorengegangen. Sie wurde bewusst durch "Kategorie" ersetzt — der Album-Name ist in Melo die erste Kategorie eines Titels (category_list.dart:12, kategorienAusTags). Was wirklich fehlt, ist die Album-Detailansicht und die Tracknummer, die gar nicht eingelesen wird. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013xAHJTJM6UUqmjUgk1PUEd
This commit is contained in:
co-authored by
Claude Opus 5
parent
e6d5f1c9ee
commit
d15867d962
@@ -18,8 +18,8 @@ Erklär-Kommentare an genau den Stellen, wo früher Bugs saßen. Das ist deutlic
|
||||
der Durchschnitt eines Hobby-Projekts.
|
||||
|
||||
Als **vollwertige Musik-App im Sinne von Apple Music ist sie es aber noch nicht.** Es fehlen
|
||||
nicht Details, sondern drei tragende Säulen: **Alben als Browse-Achse**, **echtes Offline-
|
||||
Management** und **Cover-Art für Server-Titel**. Dazu kommen zwei stille Fehler, die man
|
||||
nicht Details, sondern drei tragende Säulen: **die Album-Detailansicht** (siehe die Korrektur
|
||||
unter K4), **echtes Offline-Management** und **Cover-Art für Server-Titel**. Dazu kommen zwei stille Fehler, die man
|
||||
der App nicht ansieht: der Offline-Schalter tut nichts, und ohne `POST_NOTIFICATIONS`
|
||||
erscheint auf Android 13+ keine Wiedergabe-Benachrichtigung.
|
||||
|
||||
@@ -89,23 +89,41 @@ bleibt.
|
||||
|
||||
---
|
||||
|
||||
### K4 — Alben fehlen als Browse-Achse
|
||||
**Ort:** `lib/library/song_grouping.dart` · `lib/library/my_music_screen.dart:88`
|
||||
### K4 — ~~Alben fehlen als Browse-Achse~~ → **korrigiert: Album-Detailansicht fehlt**
|
||||
**Ort:** `lib/library/category_list.dart:12` · `lib/library/categories.dart:26`
|
||||
**Kategorie:** Funktionsumfang
|
||||
|
||||
`Songs.album` ist eine Textspalte, aber es gibt weder eine Alben-Liste noch einen
|
||||
Album-Detail-Screen. `song_grouping.dart` kann nur `groupByArtist`. Die Unterreiter
|
||||
heißen **Lieder / Kategorie / Künstler** — im Referenz-Screenshot
|
||||
(`ui-referenz/bugs/img_2d5761551808.jpg`, das ist Melo selbst) stand dort noch
|
||||
**Songs / Künstler / Alben**. Die Achse ist also verlorengegangen.
|
||||
> **Korrektur vom 2026-08-23 (nach der P0-Runde).** Die ursprüngliche Fassung
|
||||
> dieses Punktes war falsch. Sie behauptete, die Alben-Achse sei
|
||||
> „verlorengegangen". Sie wurde **bewusst ersetzt**: `category_list.dart`
|
||||
> dokumentiert das im Klassenkommentar, und `kategorienAusTags` setzt den
|
||||
> Album-Namen beim Scan als **erste Kategorie** jedes Titels. Der Reiter
|
||||
> „Kategorie" *ist* der Alben-Reiter — nur allgemeiner, weil ein Titel
|
||||
> mehreren Kategorien angehören darf. Der Fehler entstand, weil nur
|
||||
> `song_grouping.dart` und `my_music_screen.dart` gelesen wurden.
|
||||
|
||||
**Wirkung:** Album ist neben Playlist die wichtigste Einheit, in der Menschen Musik
|
||||
denken. Ohne sie ist "Bibliothek" eine flache Titelliste — brauchbar bei 200 Titeln,
|
||||
unbrauchbar bei 5.000.
|
||||
**Was wirklich fehlt**, ist nicht die Achse, sondern die **Ansicht eines
|
||||
Albums als Album**:
|
||||
|
||||
1. **Kein Album-Kopf.** `_KategorieLiederScreen` ist eine `AppBar` über einer
|
||||
Titelliste. Es fehlen großes Cover, Künstler, Jahr, Titelzahl,
|
||||
Gesamtdauer und ein „Abspielen / Zufällig"-Paar. Bei Apple Music trägt
|
||||
genau dieser Kopf die Identität eines Albums.
|
||||
2. **Falsche Reihenfolge.** Innerhalb einer Kategorie wird nach Titel
|
||||
sortiert. Ein Album gehört in **Tracknummer-Reihenfolge** — sonst beginnt
|
||||
jedes Konzeptalbum mit dem Lied, das alphabetisch vorn steht.
|
||||
3. **Die Tracknummer wird gar nicht gelesen.** Verifiziert: weder `Songs` noch
|
||||
der Scan kennen `trackNumber`. Punkt 2 braucht also zuerst eine
|
||||
Schema-Erweiterung plus Auslesen des Tags.
|
||||
4. **Kein Weg vom Künstler zu seinen Alben.** `_ArtistSongsScreen` zeigt alle
|
||||
Titel flach.
|
||||
|
||||
**Empfehlung (ersetzt die alte):** Keinen vierten Reiter bauen — der würde
|
||||
denselben Bestand doppelt zeigen. Stattdessen `_KategorieLiederScreen` zu
|
||||
einem richtigen Detail-Screen ausbauen und die Tracknummer nachrüsten. Der
|
||||
Aufwand liegt damit **nicht** bei „ein Reiter wie der Künstler-Reiter",
|
||||
sondern bei Schema-Migration + Scan + Screen.
|
||||
|
||||
**Empfehlung:** `groupByAlbum` (analog zu `groupByArtist`, existierende `_groupBy`-
|
||||
Hilfsfunktion nutzt man mit), vierter Unterreiter, Album-Screen mit großem Cover,
|
||||
Künstler, Jahr, Titelzahl, Gesamtdauer und "Abspielen / Zufällig".
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user