feat(web+android): Künstlern folgen, Alben merken, Top Songs per Künstler-ID
Folgen ist kein eigener Speicher, sondern Navidromes Stern auf dem Künstler (star&id=<ndArtistId>) — Navidrome wirft id, albumId und artistId beim Markieren in eine Liste und behandelt sie gleich, der vorhandene Aufruf trug also ohne Änderung. Zustand aus `starred` in getArtist/getAlbum, beide Plattformen schalten optimistisch um. Android nutzt den vorhandenen StarState, der ohnehin über IDs arbeitet. Dazu: getTopSongs bekommt seit Navidrome 0.64 zusätzlich `id`. Der Namensweg sucht mit LIKE und Max:1, bei gleichnamigen Künstlern gewann der erste Treffer. Jetzt id + artist zusammen; in Erkunden bleibt es beim Namen, weil die artistId dort Deezers ist. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
de674dbe3f
commit
5f043beb5d
11 files changed
+177
-11
No files matched your search
@@ -39,6 +39,7 @@ Die Android-App zählt eigenständig weiter (mehrere APKs pro Release). Welche d
|
||||
| Playlist create/edit | ✅ | ✅ |
|
||||
| Playlist cover upload | ✅ | ✅ |
|
||||
| Besitzer geteilter Playlists | ✅ | ✅ |
|
||||
| Künstler folgen / Album merken | ✅ | ✅ |
|
||||
| Spotify / YouTube importer | ✅ | ✅ |
|
||||
| Musik-Duell (Anzeigetafel) | ✅ | ✅ |
|
||||
| Wiedergabe fortsetzen | ✅ | ✅ |
|
||||
@@ -75,6 +76,36 @@ Die Android-App zählt eigenständig weiter (mehrere APKs pro Release). Welche d
|
||||
|
||||
---
|
||||
|
||||
## [2.7] — 2026-09-16
|
||||
|
||||
**Android:** APK folgt, sobald das Folgen vollständig ist (Glocke + Benachrichtigungen fehlen noch).
|
||||
|
||||
### Added
|
||||
- **Künstlern folgen und Alben merken (Web + Android)** — Grundlage für die geplanten Meldungen zu
|
||||
neuen Veröffentlichungen und Konzerten. „Folgen" ist **kein eigener Speicher**, sondern Navidromes
|
||||
Stern auf dem Künstler: `star&id=<ndArtistId>`. Damit ist der Zustand sofort auf allen Geräten da,
|
||||
überlebt Neuinstallationen und taucht sogar in Navidromes eigener Oberfläche auf.
|
||||
- Möglich ist das, weil Navidrome `id`, `albumId` und `artistId` beim Markieren in **eine** Liste
|
||||
wirft und gleich behandelt (`media_annotation.go`) — unser vorhandener Aufruf trug also ohne
|
||||
Änderung. Den Zustand liefert `starred` aus `getArtist`/`getAlbum`.
|
||||
- Web: „Folgen"/„Folge ich" in der Aktionsleiste der Künstlerseite, „Merken"/„Gemerkt" bei den
|
||||
Albumaktionen. Android: eine Pille auf der Künstlerseite, ein Herz in der Albumleiste.
|
||||
- Beide Plattformen schalten **optimistisch** um und fallen bei einem Fehlschlag zurück — Android
|
||||
über den vorhandenen `StarState`, der ohnehin über IDs arbeitet und deshalb unverändert taugt.
|
||||
- Wer ohne Künstler-Pin folgt, bekommt einen Hinweis: ohne Pinnung läuft die Deezer-Zuordnung über
|
||||
den Namen, und bei gleichnamigen Künstlern kämen dauerhaft die Neuheiten des Falschen.
|
||||
|
||||
### Changed
|
||||
- **Top Songs fragen jetzt über die Künstler-ID (Web + Android)** — Navidrome 0.64 nimmt bei
|
||||
`getTopSongs` zusätzlich `id`. Bisher lief die Abfrage nur über den **Namen**, und der Namensweg
|
||||
sucht mit `LIKE` und `Max: 1` (`core/external/provider.go`): bei zwei gleichnamigen Künstlern in
|
||||
der Bibliothek gewann schlicht der erste Treffer. Wir schicken jetzt `id` **und** `artist` — ältere
|
||||
Navidrome-Versionen ignorieren `id`, neuere fallen bei unbekannter ID von selbst auf den Namen
|
||||
zurück. In Erkunden bleibt es bewusst beim Namen: die dortige `artistId` ist **Deezers**, nicht
|
||||
Navidromes.
|
||||
|
||||
---
|
||||
|
||||
## [2.6] — 2026-09-12
|
||||
|
||||
**Android:** 1.9 (versionCode 12) → 1.12 (versionCode 15). 1.9 brachte den Besitzer geteilter
|
||||
|
||||
Reference in new issue
Block a user